GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Syntaxfehler:Dateiende unerwartet (dann erwartet)

Ich bin auf das gleiche Problem gestoßen. Und das Problem ist, dass das Format der Datei "dos" ist, aber in der Linux-Shell "unix" erforderlich ist, also installiere ich "dos2unix"

$ sudo apt-get install dos2unix

oder wenn Sie Emacs verwenden, können Sie dies tun:

C-x RET f unix

Viel Glück :)


  1. Das Unix-Verzeichnistrennzeichen ist ein Schrägstrich, kein umgekehrter Schrägstrich.
  2. Hat Ihr Editor unter Windows eine Option zum Speichern von Dateien im "Unix"-Dateiformat? Die Shell sieht das Wort then^M mit Wagenrücklauf am Ende. Wenn Sie dos2unix nicht haben, versuchen Sie, diesen Befehl auszuführen:sed -i 's/\r$//' filename

Linux
  1. Eingabe-/Ausgabeumleitung in Linux/Unix

  2. Openssl-Kompilierungsfehler

  3. Syntaxfehler in der Nähe des unerwarteten Tokens „then“

  4. Fehler mit gradlew:/usr/bin/env:bash:Keine solche Datei oder Verzeichnis

  5. sudo -i gibt einen Fehler zurück

So fügen Sie unter Linux Text an das Dateiende an

So konvertieren Sie eine Windows-Datei in eine UNIX-Datei

AWK-Befehl unter Linux/Unix

Fehler „Unerwartetes Dateiende“ und „Fehler beim Importieren der Funktionsdefinition“ beim Ausführen von Shellscript mit qsub

Syntaxfehler nahe unerwartetem Token ' - bash

unix - teilt eine riesige .gz-Datei zeilenweise auf