เมื่อฉันเปลี่ยนไฟล์ใน cygwin bash ด้วยคำสั่ง sed ไฟล์จะถูกล็อค
ทำซ้ำ:
- เปิด
cmd
และcd
สู่ไดเรกทอรีที่ไม่ใช่ผู้ใช้ (fetemp
) echo aaa > test.txt
- เปิดใน texteditor เพิ่มบรรทัดลอง save => works
%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) ... * ถอนหายใจ *