sh Skriptname -sh: / bin / sh ^ M: fehlerhafter Interpreter: Keine solche Datei oder kein solches Verzeichnis [Duplikat]

Diese Frage hat hier bereits Antworten :

Kommentare

Antwort

Sie scheinen Zeilenenden im Windows-Stil (CRLF, ^ M ^ J) zu haben ) anstelle von Zeilenenden im Unix-Stil (LF, ^ J). Versuchen Sie dos2unix

dos2unix delete_7gg.sh 

und führen Sie es dann wie gewohnt aus.

Vom Mann:

dos2unix – Konverter für DOS / MAC zu UNIX-Textdateiformat

Kommentare

  • Vielen Dank für die Antwort, aber ich habe das Skript in einem qnap qts 4.3.6 erstellt, das ich über ssh erreichen kann. Es sollte einfach Dateien löschen, die älter als sieben Tage sind. Ich kann ' dos2unix nicht installieren, da das System keinen Paketmanager hat. Ich habe nur erwartet, ein Skript zu erstellen und es in cron zu setzen. Aber ich ' erhalte stattdessen diesen Fehler.
  • @Malkavian Ein anderer Weg: tr -d '\r' < input > output.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.