把这个文本文件追加修改:命令注释掉一行文本,并在下一行
# Existing comment
#some already_commented_out line
some target line
而产生的:
# Existing comment
#some already_commented_out line
#some target line
some modified line
我可以做到这一点使用两个单独的SED命令:
sed -i -r 's/^[^#].*target.*$/#&\n&/' textfile
sed -i -r '/^[^#].*target/{s/target/modified/}' textfile
有没有办法将它们组合成单个命令?是否有更好的方法使用其他sed命令(如append)执行此操作?
但是如果组捕获也用于搜索模式,例如, '焦油(GET)+'?我事先并不知道使用了多少这样的组,因为这种模式是从外部提供的。至少有一种方法可以引用最后一个匹配的组? – user7652621