Bash Error: Dateiende beim Suchen nach ` " ' erreicht. Was tun?
Hey,
Ich arbeite momentan an einem Datei Manager für die Shell. Jetzt habe ich folgende Fehlermeldungen:
Datei_Manager.sh: Zeile 180: Dateiende beim Suchen nach ` " ' erreicht
Datei_Manager.sh: Zeile 183: Syntax Fehler: Unerwartetes Dateiende
Meinen ganzer Code ist zu lang um den hier jetzt einzufügen. Ich wollt einfach nur mal wissen, was die möglichen Fehler sind die ich gemacht haben könnte weshalb die beiden Fehlermeldungen erscheinen, damit ich gezielter suchen kann.
Also:
Welche möglichen Fehler könnte ich gemacht haben?
Danke schon im vorraus für (schnelle) Antworten!
Bastian
5 Antworten
Wenn du irgendwo in deinem Quellqode ein Literal mit einem der drei Zeichen ` " ' eröffnest, dann solltest du es auch irgendwo mit demselben Zeichen wieder abschließen.
Wenns geht - vor dem Ende der Datei.
Hallo
Ich arbeite momentan an einem Datei Manager für die Shell
Auf Basis eines Shell-Scripts oder wie?
Ist Dir denn der Midnight Commando (mc) oder Tux Commander (tuxcmd) oder schlicht der gnome-commander nicht gut genug das Du glaubst es besser zu machen?
Datei_Manager.sh: Zeile 180: Dateiende beim Suchen nach ` " ' erreicht
Wenn man Shell-Scripte testet, dann bietet sich die Option -x an um die Shell im "Script-Debug-Modus" (keine Ahnung ob der so heißt) laufen zu lassen:
bash -x Datei_Manager.sh
Meist sind es fehlende schließende Klammern ] ) } oder " oder ' oder ` etc. oder fehlende esac, fi oder done die zu solchen Fehlermeldungen führen.
Alternativ kann man auch Webseiten wie diese besuchen um sein Script testen zu lassen.
Meinen ganzer Code ist zu lang um den hier jetzt einzufügen.
Den könntest Du auch einfach auf einem Paste-Server ablegen.
Linuxhase
Ich sehe es anders.
Das war nur eine Frage von mir, weil ich mir nicht vorstellen kann das jemand der einen Syntaxfehler nicht selbst findet besser Programme schreiben kann.
Es kann eine reine Übung sein Dinge zu implementieren, die bereits andere Menschen vor vielen Jahrzehnten auf die Beine gestellt haben
Es ist auch nichts dagegen einzuwenden eine weitere Alternative zu bauen, sei es auch nur um zu sehen zu was man fähig ist.
Wobei aus meiner Sicht eine Skriptsprache für diese Aufgabe sowieso ungeeignet ist.
- Machen kann man das auch damit, aber es wird nicht schnell laufen und dazu sehr unübersichtlich sein.
- Eine richtige Programmiersprache, denke ich, bietet durch include mehr Möglichkeiten als die Shell mit der funtion Funktion machen kann.
Mit Hilfsprogrammen wie dialog, xdialog, zenity ect. lässt sich da schon was bauen.
Linuxhase
Falsche Sonderzeichen
Nja das ist mir schon klar. Könnten das denn wirklich alle sein oder kann man das noch weiter eingrenzen? Wenige sinds ja nicht :l
Man kann dir nicht alles aufzählen, was du falsch machen kannst, poste den code auf pastebin oder lass es. Blindfehlersuche ist unsinnig. Du schreibst ja nicht einmal, in welchem Zusammenhang das auftritt.
Meinen ganzer Code ist zu lang um den hier jetzt einzufügen.
Wir brauchen auch nicht den ganzen Code sehen, sondern Zeile 180 und 183. Vorzugsweise auch die Zeilen davor und danach, damit man besser nachvollziehen kann, was Du da machst.
Welche möglichen Fehler könnte ich gemacht haben?
Steht doch klar und deutlich in der Fehlermeldung: Ein Syntaxfehler
Fehlendes oder fehlerhaftes Escaping könnte auch dazu führen.
Ich sehe es anders. Es kann eine reine Übung sein Dinge zu implementieren, die bereits andere Menschen vor vielen Jahrzehnten auf die Beine gestellt haben
Wobei aus meiner Sicht eine Skriptsprache für diese Aufgabe sowieso ungeeignet ist.