Syntaxfehler: Nicht abgeschlossener Anführungsstring - laufende .run-Datei

25666
Colin747

Ich versuche eine .runDatei auszuführen, logge mich als SU ein und führe den folgenden Befehl aus:

sh xampp-linux-x64-1.8.3-1-installer.run 

Ich erhalte jedoch die folgende Fehlermeldung:

 Syntax error: Unterminated quoted string 

Was ist die Ursache dafür?

2
Die Ursache wird angegeben (`Syntaxfehler`). Sind Sie mehr daran interessiert, wie Sie das Problem beheben können? Wenn ja, ist es Klartext (können Sie "cat .run")? nerdwaller vor 10 Jahren 0
Die Ausgabe ist nur Kauderwelsch. Colin747 vor 10 Jahren 0

4 Antworten auf die Frage

4
Hennes

Die Ursache ist wahrscheinlich eine nicht abgeschlossene Zeichenfolge im Installationsprogramm. (Nun duh!).

Führen Sie es entweder mit der Option -x aus, um weitere Debug-Informationen zu erhalten, oder öffnen Sie das Installationsprogramm in einem Editor und suchen Sie nach nicht übereinstimmenden Anführungszeichen.

Beispiel:

#!/usr/bin/env bash #My demo installer! # echo "starting here!" echo "and an error in this line echo "We will never get here!" 

Beachten Sie das fehlende Schlusszitat ( ") in der zweiten Echozeile.


Bearbeiten:

Ich habe gerade eine Datei heruntergeladen, die xampp-linux-x64-1.8.3-1-installer.runvon sourceforge aufgerufen wurde (was vermutlich die gleiche ist wie Sie), und als ich sie in vim öffnete, bemerkte ich, dass sie damit beginnt ^?ELF^. Diese Datei scheint eine ELF-Binärdatei zu sein.

Mit dem Befehl file bestätigen Sie dies:
file: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, stripped

Es ist kein Shell-Skript und die normale Ausführung wäre entweder:

  1. xampp-linux-x64-1.8.3-1-installer.run (vorausgesetzt das Verzeichnis befindet sich in Ihrem Suchpfad),
  2. oder mit dem vollständigen Pfad vorangestellt. ZB ./xampp-linux-x64-1.8.3-1-installer.runwenn Sie sich bereits im selben Verzeichnis befinden, in dem sich die Datei befindet. (Deshalb klappte @ erhun's Antwort).
Ich werde einen Blick darauf werfen, ich nahm an, dass es sich um einen "offiziellen" Download handelt, der keine Fehler enthalten würde, weshalb ich davon ausging, dass es etwas war, was ich falsch gemacht hatte. Colin747 vor 10 Jahren 0
Das nächste Problem ist, dass ich die Datei nicht öffnen kann, entweder mit einem Editor (einschließlich Vi) oder sogar mit "cat". Irgendwelche Ideen? Colin747 vor 10 Jahren 0
3
erhun

Es wird auf diese Weise funktionieren.

chmod +x xampp-linux-x64-1.8.3-1-installer.run ./xampp-linux-x64-1.8.3-1-installer.run 
0
mareq133

Ich habe versucht, xampp-linux-x64-1.8.3-2-installer.run zu installieren und hatte die gleiche Meldung. Keine dieser Antworten funktionierte für mich, weil ich denke, dass dies die x64-Bit-Version ist und ich versuchte, sie auf einem 32-Bit-Linux-Mint zu installieren.

Stattdessen habe ich xampp-linux-1.8.3-2-installer.run heruntergeladen (beachte das Fehlen von x64 im Dateinamen) und dieser hat funktioniert. Ich habe das chmod gemacht, dann sudo ./xampp-linux-1.8.3-2-installer.run und nach ein paar Sekunden hatte ich den gui Installer.

PS. Sie müssen zu sourceforge gehen, da auf der Website apachefriends.org die x64-Version als Standarddownload angezeigt wird.

0
Anshul

Sieht mit 64-Bit-Betriebssystemen kein Problem aus.

Ich habe den gleichen Fehler erhalten und "uname -m" kann dies bestätigen (zeigt x86_64), obwohl ich bereits sicher war, dass speziell ein 64-Bit-Computer gekauft wurde.

Sieht aus wie beim Herunterladen (wget für viele Stunden, sehr langsames mobiles Internet), 'xampp-linux-x64-1.8.3-4-installer.run' wurde beschädigt!