在匹配的行首添加 #(磅号)符号。(搜索字符串:文件路径)

在匹配的行首添加 #(磅号)符号。(搜索字符串:文件路径)

文件:

sh  xyz/abc/www/def/gef/rqs/
sh xyz/toh/aaa/def/gef/rqs/
sh xyz/123/qqq/def/gef/rqs/

我想要这样的改变

sh  xyz/abc/www/def/gef/rqs/
#sh xyz/toh/aaa/def/gef/rqs/
sh xyz/123/qqq/def/gef/rqs/

已编辑:文件路径以匹配我的问题陈述。

答案1

您可以使用

sed -i '\%xyz/toh/aaa% s/^/#/' file

解释:

  • \%将正则表达式分隔符设置为%(以免与路径分隔符冲突/
  • 匹配xyz/toh/aaa
  • 将行首替换^为 `#

答案2

为什么不使用vim

vi -c 'g/xyz\/toh\/aaa/s/^/#/ | x' file

或者

vi -c '%s!.* xyz/toh/aaa!#&! | x' file

相关内容