我有一个名为sara的文件,在此文件中。我在某处有 UNIX 这个词,我想用 linux 替换它。
sed 's/UNIX/linux/' sara
Run Code Online (Sandbox Code Playgroud)
但当我使用编辑器输入时,它仅回显此更改的所有内容,但不会将其保存在文件 sara 中。
要更新文件,您需要添加-i
:
sed -i 's/UNIX/linux/' sara
Run Code Online (Sandbox Code Playgroud)
$ cat a
hello UNIX how are you?
I am pretty fine, UNIX
Great.
Run Code Online (Sandbox Code Playgroud)
不-i
输出替换但文件未更改:
$ sed 's/UNIX/Sara/' a
hello Sara how are you?
I am pretty fine, Sara
Great.
$ cat a
hello UNIX how are you?
I am pretty fine, UNIX
Great.
Run Code Online (Sandbox Code Playgroud)
与之-i
相反,文件替换后没有输出:
$ sed -i 's/UNIX/Sara/' a
$ cat a
hello Sara how are you?
I am pretty fine, Sara
Great.
Run Code Online (Sandbox Code Playgroud)