Was bedeutet plötzlich "Textdatei beschäftigt" beim Aufrufen eines Skripts?


10
bash: ./myscript: /usr/bin/env: bad interpreter: Text file busy

"Myscript" beginnt mit #!/usr/bin/env python. Nur ein erneuter Startversuch behebt das Problem.

Warum wird das Systemprogramm envsporadisch "beschäftigt"? Kann es verursacht werden durch prelink(aber cron sollte es zu diesem Zeitpunkt nicht starten ...)


1
Es ist nicht envbeschäftigt, es ist das Skript selbst. (Höchstwahrscheinlich von einem Redakteur oder Zuschauer.)
David Schwartz

3
Hier bedeutet "beschäftigt" laut execve (2) "ein Prozess hat ./myscript zum Schreiben geöffnet " . Ein Editor tut dies normalerweise nur, während er Änderungen auf der Festplatte speichert.
user1686

OK, jemand sollte dies als Antwort hinzufügen.
Vi.

Antworten:


5

Kommentatoren sagen, dass das Skript beschäftigt ist, nicht envoder pythonund weil es vom Texteditor gespeichert wird.


3

Normalerweise ist es "./myscript", das beschäftigt ist, weil ein anderes Programm die Datei ändert. Dies kann ein Texteditor (beim Speichern), aber auch eine Remote-Kopie (dies kann lang sein, wenn die Download-Rate niedrig ist) oder ein anderes Programm sein.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.