Onkel_Hägi Geschrieben 7. September 2005 Geschrieben 7. September 2005 Hallo Leute, ich habe ein kleines Problem mit einem Shell-Script... und zwar steht folgendes drin: #!/bin/sh ./tagesmengen.php -i php tagesmengen_bild.php Wenn ich das jetzt aufrufe per "./tagesmengen.sh" kommt folgende Fehlermeldung: : bad interpreter: No such file or directory Ich habe mir andere Scripte angeschaut auf unserem Server, die sehen auch nicht anders aus als meins... das einzige was ich noch anderes drin habe, ist der Aufruf der zweiten php-Datei mit dem php davor. Wenn ich beide Befehle einzeln auf der Koncole ausführe funktioniert alles einwandfrei... Habt Ihr eine Idee woran es liegen könnte? Betriebssystem ist Suse Linux 9.2 64 Bit. Danke schonmal.
perdian Geschrieben 7. September 2005 Geschrieben 7. September 2005 Habt Ihr eine Idee woran es liegen könnte?Hast du mal ausprobiert den PHP Interpreter mit vollem Pfad anzugeben, also sowas: /var/lib/php tagesmengen_bild.php
Onkel_Hägi Geschrieben 7. September 2005 Autor Geschrieben 7. September 2005 Ja, kommt immer noch der gleiche Fehler...
Monty82 Geschrieben 7. September 2005 Geschrieben 7. September 2005 Was passiert denn, wenn Du aus der Console aus "/bin/sh" aufrufst? Die Fehlermeldung lässt darauf schliessen, das die Shell, in der Du dich gerade befindet nicht's mit dem Inhalt deiner .sh-Datei anfangen kann. Vielleicht sind ja auch Steuerzeichen/Leerzeichen innerhalb der Interpreter-Beschreibung (!#...) im Wege...
Onkel_Hägi Geschrieben 7. September 2005 Autor Geschrieben 7. September 2005 Das lustige ist ja, dass wenn ich die erste Zeile weglasse, klappt der Aufruf der dritten Zeile, aber die zweite (das php -i) klappt nicht, weil der Parameter wohl nicht (oder falsch) übergeben wird... Wenn ich das eingebe, dann wechselt der "Prompt" von "Servername:Pfad" zu "sh-3.00#".
alligator Geschrieben 7. September 2005 Geschrieben 7. September 2005 Hallo Leute, ich habe ein kleines Problem mit einem Shell-Script... und zwar steht folgendes drin: #!/bin/sh ./tagesmengen.php -i php tagesmengen_bild.php Wenn ich das jetzt aufrufe per "./tagesmengen.sh" kommt folgende Fehlermeldung: : bad interpreter: No such file or directory Ich habe mir andere Scripte angeschaut auf unserem Server, die sehen auch nicht anders aus als meins... das einzige was ich noch anderes drin habe, ist der Aufruf der zweiten php-Datei mit dem php davor. Wenn ich beide Befehle einzeln auf der Koncole ausführe funktioniert alles einwandfrei... Habt Ihr eine Idee woran es liegen könnte? Betriebssystem ist Suse Linux 9.2 64 Bit. Danke schonmal. Hallo, wie wäre mit #!/bin/sh php ./tagesmengen.php -i php tagesmengen_bild.php oder ist ./tagesmengen.php ein Shellscript ? cya alligator (der echt nicht versteht wieso man die m.E. websprache php unter unix/linux einsetzen sollte ?!?)
Onkel_Hägi Geschrieben 7. September 2005 Autor Geschrieben 7. September 2005 Hallo, wie wäre mit #!/bin/sh php ./tagesmengen.php -i php tagesmengen_bild.php oder ist ./tagesmengen.php ein Shellscript ? cya alligator (der echt nicht versteht wieso man die m.E. websprache php unter unix/linux einsetzen sollte ?!?) Wie gesagt, wenn ich die Zeile ./tagesmengen.php -i so auf der Console eingebe, klappts ja und des Ding wird ausgeführt... Und die anderen Scripte sehen auch so aus und da gehts... Ach ja, ich brauche PHP um was in die Datenbank zu schreiben, bzw um auch Funktionen aus php die ich dafür brauche aufzurufen. Der Zweite Aufruf erzeugt ein Bild mit den Daten des ersten, das auf einem unserer Intranetsysteme angezeigt wird...
perdian Geschrieben 7. September 2005 Geschrieben 7. September 2005 Und die anderen Scripte sehen auch so aus und da gehts...Ich wage zu bezweifeln, dass sie wirklich genauso aussehen - irgendetwas muss anders sein. Solch ein Fehler tritt nicht selektiv mal hier und mal da auf, dort dann aber wieder nicht. Also überprüfe nochmal genau wo die Unterschiede liegen, versuche mal ein funktionierendes Script langsam in Richtung des Inhaltes des Problemscripts zu ändern. Ab irgendeinem Punkt wird es dann nicht mehr funktionieren - und genau dann haste eine perfekte Eingrenzung woran es liegt. So schwer ist das nicht. http://www.catb.org/~esr/faqs/smart-questions.html#prune
Onkel_Hägi Geschrieben 7. September 2005 Autor Geschrieben 7. September 2005 Wie gesagt (denke ich doch), der einzige Unterschied zu den anderen Skripten ist, dass ich hier eben noch den Aufruf "php tagesmengen_bild.php" drin habe, in den anderen Skripten gibts nur Aufrufe in der Art wie "./xy.php -i"
perdian Geschrieben 7. September 2005 Geschrieben 7. September 2005 Nochmal zum Mitschreiben: der einzige Unterschied zu den anderen Skripten ist, dass ich hier eben noch den Aufruf "php tagesmengen_bild.php" drin habeversuche mal ein funktionierendes Script langsam in Richtung des Inhaltes des Problemscripts zu ändern. Ab irgendeinem Punkt wird es dann nicht mehr funktionieren - und genau dann haste eine perfekte Eingrenzung woran es liegt.
carstenj Geschrieben 7. September 2005 Geschrieben 7. September 2005 Hallo, wahrscheinlich hast du die Datei mit Windows erstellt? Dann gibts nämlich Probleme mit den Zeilenumbrüchen. Siehe hier: http://www.linuxforen.de/forums/archive/index.php/t-71880.html
alligator Geschrieben 7. September 2005 Geschrieben 7. September 2005 Hallo, ist die Shebang-Zeile in ./tagesmengen.php korrekt? Bzw. was passiert den nun, wenn php ./tagesmengen.php -i in dein Script schreibst? cya alligator
Onkel_Hägi Geschrieben 7. September 2005 Autor Geschrieben 7. September 2005 Hallo, wahrscheinlich hast du die Datei mit Windows erstellt? Dann gibts nämlich Probleme mit den Zeilenumbrüchen. Siehe hier: http://www.linuxforen.de/forums/archive/index.php/t-71880.html Ich glaub des wars, bisher siehts gut aus... Bzw erstellt hatte ich sie schon unter Linux, aber bearbeitet per Samba unter Windows...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden