无需打开编辑器即可在文件中添加/编辑行文本(linux命令)

无需打开编辑器即可在文件中添加/编辑行文本(linux命令)

我知道如何向文件添加新文本,但如何编辑它?

示例:hello_world = 1使用以下命令添加到 test.txt:

echo "hello_world = 1" >> test.txt

但是我怎样才能改变10

答案1

使用sed

sed -i 's/1/0/g' test.txt

一般来说:

sed -i 's/oldstring/newstring/g' filename

请参阅man sed以了解更多信息。

答案2

通过 awk,

awk '{sub(/1/,"0")}1' infile > outfile

例子:

$ echo 'hello_world = 1' | awk '{sub(/1/,"0")}1'
hello_world = 0

相关内容