2013-03-14 4 views
0

Dans un fichier j'ai cette structure:remplacer le contenu manquant avec sed

192.168.1.53 # hostname, city, state 
192.168.1.101 # hostname, city, state 
192.168.1.10 # hostname, city, state 
192.168.1.18 # hostname, city, state 
192.168.1.19 
192.168.1.104 # hostname, city, state 

Comment puis-je utiliser sed pour rechercher et remplacer quand il n'y a pas un « # », mais remplacer après ip puis passer à côté d'un il manque "#".

Il semble donc comme ci-dessous:

192.168.1.53 # hostname, city, state 
192.168.1.101 # hostname, city, state 
192.168.1.10 # hostname, city, state 
192.168.1.18 # hostname, city, state 
192.168.1.19 # newcontent, new, new 
192.168.1.104 # hostname, city, state 

Répondre

0

Si la pièce que vous souhaitez ajouter est une chaîne fixe, il est assez facile:

sed 's/^[^#]*$/& # newcontent, new, new/' 

Dans la chaîne de remplacement, & représente la correspondance texte.

+0

Merci beaucoup! Ça a marché! – sectech