我有以下testing文件
AAA BBB CCC
使用下面的sed我可以注释掉BBB行。
# sed -e '/BBB/s/^/#/g' -i file
如果在开始时没有#号,我只想注释掉该行。
# sed -e '/^#/! /BBB/s/^/#/g' file sed: -e Expression #1,char 7: unkNown command: `/'
任何想法我可以如何实现这一目标?
使用Grep查找两个短语之间的文本块(包括短语)
我如何使用sed进行search和replace,而不包括一组字符?
.htaccess:从URL中删除公共
如何在windowsbatch file中使用regexp来启动安装?
Nginx匹配位置中的特定单词
如何在Nginx服务器上执行不区分大小写的正则Expression式?
Sed:为什么]似乎不起作用?
使用多个sed命令
Ant replaceregexp任务 – 匹配并replaceHTML注释块
Apache RewriteCond中variables的负面比较
假设你没有多个#的行,这将工作:
sed -e '/BBB/ s/^#*/#/' -i file
注意:你不需要/ g,因为每行最多只有一个替换。
我觉得这个解决方案是最好的。
sed -i '/![^#]/ s/(^.*BBB.*$)/# 1/' file
不管有多少个“#”符号都不重要,它永远不会再添加一个符号。 如果您要搜索的模式不包含“#”,则会将其添加到行的开头,并且还会添加尾随空格。
如果你不想要尾随空间
sed -i '/![^#]/ s/(^.*BBB.*$)/#1/' file
sed -i '/![^#]/ s/(^.*BBB.*$)/# 1/' file
这不适用于我的关键字*.sudo ,根本没有评论…
Ony下面的语法工作: sed -e '/sudo/ s/^#*/#/' file
总结以上是内存溢出为你收集整理的sed – 注释符合特定string且尚未注释掉的行全部内容,希望文章能够帮你解决sed – 注释符合特定string且尚未注释掉的行所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)