Ramneek Singh Kakkar Asked: 2019-05-18 02:29:14 +0800 CST2019-05-18 02:29:14 +0800 CST 2019-05-18 02:29:14 +0800 CST 使用 sed 从文件开头注释到模式匹配行 772 我搜索一个模式,比如“START OF ARAMBOL”,它在文件中匹配。现在我想评论从第 1 行到当前匹配模式行号的每一行。我必须为 200 多个文件执行此操作。 我也可以使用 perl 来做到这一点,但是有什么好的 sed 方法可以做到这一点。 谢谢 sed gvim 2 个回答 Voted Best Answer Httqm 2019-05-18T02:44:40+08:002019-05-18T02:44:40+08:00 作为一个单行来展示这个概念: echo -e 'a\nb\nc\nPATTERN\nd\ne\nf' | sed '0,/PATTERN/ s/^/#/' 你只需要适应你的环境: 至于“模式” 我假设 '#' 作为评论字符 以及如何将其应用于所有文件。如果它们都是'fileXXX.txt',你可以运行:sed -i '0,/PATTERN/ s/^/#/' file*txt D. Ben Knoble 2019-05-18T07:34:04+08:002019-05-18T07:34:04+08:00 您的问题询问sed但包含gvim标签,所以这里是ed/ex答案: ed file <<EOF 0,/"$pattern"/s/^/"$comment_char"/ wq EOF 它看起来非常像sed答案是因为sed和ex下降ed
作为一个单行来展示这个概念:
你只需要适应你的环境:
sed -i '0,/PATTERN/ s/^/#/' file*txt
您的问题询问
sed
但包含gvim
标签,所以这里是ed
/ex
答案:它看起来非常像
sed
答案是因为sed
和ex
下降ed