我需要覆盖配置文件中的特定行。 没有打印/回声,否则只是覆盖文件。
例如我有文件:
$ echo test.file
$ line1
$ line2
$ line3
$ line4
我想将第2行覆盖为line7090:
$ echo test.file
$ line1
$ line7090
$ line3
$ line4
感谢帮助, 亚历
答案 0 :(得分:1)
您可以使用sed
选项-i
sed -i '2s/^.*$/line7090/' file
或者,不使用正则表达式
sed -i -n '2!p;2iline7090' file
或gawk
选项-i inplace
awk -i inplace 'NR==2{print "line7090"; next}1' file
你进入file
:
line1
line7090
line3
line4