当我使用sed命令更改cygwin bash中的文件时,文件被锁定。
复制:
- 打开
cmd
并cd
转到非用户目录(fetemp
) echo aaa > test.txt
- 在texteditor中打开,添加行,尝试保存=>作品
%CYGWIN_HOME%\bin\bash -c "sed -i 's/aaa/bbb/' test.txt
”- 在texteditor中,添加另一行并尝试保存=>“访问被拒绝”
WTF ?!如何在不锁定的情况下sed文件,或之后释放文件句柄?
Windows安全性权限似乎已完全固定在文件上:
之前的权限:
之后的权限:
但是它在用户目录(
Desktop
)中有效- 我使用LockHunter检查了文件,但似乎没有任何过程可以锁定文件
- Cygwin常见问题解答提到了对某些程序的干扰。它尝试卸载Antivir和Catalyst并重新启动。
- 尝试
UnxTools(崩溃),GnuWin32(sed不支持就地替换),Interex(安装程序不支持W7 Pro)... *叹气*