用sed替换丢失的内容

时间:2013-03-14 02:09:04

标签: 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

如果没有'#'我可以使用sed查找和替换,但是在ip之后替换,然后转到下一个缺少'#'的那个。

所以看起来如下:

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

1 个答案:

答案 0 :(得分:0)

如果您要添加的作品是固定字符串,则非常简单:

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

在替换字符串中,&代表匹配的文本。