如何忽略注释线

分享于 

1分钟阅读

电脑

  繁體 雙語

问题:

我的脚本中有以下sed命令


sed -i"/$PARAM/s/$OLD/$BEW/g" $FILE



这里sed命令将参数exsit中的旧值替换为新值

但我也需要忽略"#"线
如何更改sed语法以忽略"#"行? 解决方案必须只使用sed而不是 perl !


回答 1:

我想你想要的是这样的东西:

/^[^#]*$PARAM/s/$OLD/$NEW/

如果在 $PARAM 之前没有哈希标记,则用 $NEW 替换 $OLD


回答 2:

b ( 分支) 命令应帮助:

/^#/b;/$PARAM/s/$OLD/$NEW/g

sed 手册中:

 b label
 Branch to label; if label is omitted, branch to end of script.
 [...]


SED  忽略  
相关文章