我正在使用mingw.
$ sed -i "s/a/b/" test.txt
sed: preserving permissions for `./sed003480': Permission denied
Run Code Online (Sandbox Code Playgroud)
我可以在当前目录中触摸/ rm文件.
我有一个名为sara的文件,在此文件中。我在某处有 UNIX 这个词,我想用 linux 替换它。
sed 's/UNIX/linux/' sara
Run Code Online (Sandbox Code Playgroud)
但当我使用编辑器输入时,它仅回显此更改的所有内容,但不会将其保存在文件 sara 中。
我只是使用find和sed的组合来替换目录文件中的字符串。
find . -type f -exec sed -i 's,foo,bar,g' {} +
Run Code Online (Sandbox Code Playgroud)
它完成了工作。之后,我注销了服务器(通过SSH连接),然后记住,我需要再次运行该命令。所以我用稍微修改的查找/替换字符串触发了相同的命令,但是它不再起作用,并给出以下错误:
sed: couldn't open temporary file ./sedPFq4Ck: Permission denied
Run Code Online (Sandbox Code Playgroud)
现在怎么了?
FWIW:每次重新尝试后,提到的临时文件的文件名都会更改。