用sed替换缺少的内容

用sed替换缺少的内容,sed,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 如果没有“#”,但在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 
192.168.1.104 # hostname, city, state
如果没有“#”,但在ip之后进行替换,然后转到缺少“#”的下一个,如何使用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 # newcontent, new, new
192.168.1.104 # hostname, city, state

如果要添加的片段是固定字符串,则非常简单:

sed 's/^[^#]*$/& # newcontent, new, new/'
在替换字符串中,
&
表示匹配的文本