在Linux Vm中,我試圖更改50+文件的第二行。perl -p -i -e用包含符號的文本替換行
我已經成功地將下面的這個命令用於沒有符號的字符串。
perl -p -i -e 's/.*/new_line/if $.==2' .
但是我現在想添加新字符串 「#$ NEW_LINE $」 使用下面的命令:
perl -p -i -e 's/.*/# $Header$/if $.==2' .
但得到以下錯誤:
Final $ should be \$ or $name at -e line 1, within string
syntax error at -e line 1, near "s/.*/# $Header$ /"
Execution of -e aborted due to compilation errors.
任何幫助讚賞。先謝謝你。
使用:'perl -pie's /.*/# \ $ Header \ $/if $。== 2'' – anubhava
感謝Bunch Anuchava,它工作正常! :) perl -pie的/.*/# \ $ Header \ $/if $。== 2'。 – user5511576
@ anubhava的例子非常有效,除了它將兩行替換爲一行,因爲///不會替換字符串末尾的「\ n」。 –