Wenn ich Dateien in Cygwin Bash mit dem Befehl sed ändere, wird die Datei gesperrt.
Reproduzieren:
- Öffnen
cmd
undcd
zu nicht-Benutzerverzeichnis (fetemp
) echo aaa > test.txt
- Öffne im Texteditor, füge eine Zeile hinzu, versuche zu speichern => funktioniert
%CYGWIN_HOME%\bin\bash -c "sed -i 's/aaa/bbb/' test.txt
"- Fügen Sie im Texteditor eine weitere Zeile hinzu und versuchen Sie zu speichern => "Zugriff verweigert"
WTF ?! Wie kann ich eine Datei ohne Sperren sedieren oder die Dateizugriffsnummern danach freigeben?
Windows-Sicherheitsberechtigungen scheinen vollständig in die Datei eingebunden zu sein:
Berechtigungen vor:
Berechtigungen nach:
Es funktioniert jedoch im Benutzerverzeichnis (
Desktop
)- Ich habe die Datei mit LockHunter überprüft, aber es wird kein Prozess zum Sperren der Datei angezeigt
- In den häufig gestellten Fragen zu Cygwin werden Störungen bei einigen Programmen erwähnt. Es wurde versucht, Antivir und Catalyst zu deinstallieren und neu zu starten.
- Versuche
UnxTools(Abstürze),GnuWin32(sed unterstützt keine Inplace-Substitution),Interex(Installer unterstützt W7 Pro nicht) ... * seufz *