我想复制一行并对其中一个事件进行评论。这更像是在对复制的行(未注释的行)进行更改之前保留一份副本。
输入文件 :
Hi , can you help me here?
输出文件:
#Hi , can you help me here?
Hi , can you help me here?
答案1
sed
对于文件的每一行,使用:
sed 'h;s/^/#/p;g' < input-file > output-file
awk
与:相同
awk '{print "#" $0 ORS $0}' < input-file > output-file
或者与paste
:
paste -d '#\n' /dev/null input-file input-file > output-file
如果input-file
包含:
foo
bar
这将导致:
#foo
foo
#bar
bar
如果你更想看
#foo
#bar
foo
bar
那么你可以这样做:
paste -d'#' /dev/null input-file | cat - input-file > output-file
答案2
对于所有行执行以下操作:
$ sed -e 'h;G;s/^/#/' file
$ perl -pe '$_ = "#$_$_"' file
限制特定行:
$ sed -e 'h;s/^\$AB/#&/p;g' file
$ perl -pe 's/^(\$AB.*)/#$1$1/s' file