zeroblue2005
Goto Top

Mit Shell Skript PHP ausfüheren

Hallo Zusammen,

lacht nicht aber habe ich eben noch nie gemacht...

ich möchte eine Sh Datei haben die folgendes autom. auf einem Debian als Task ausführt:

#!/bin/bash
sudo -u www-data /var/www/owncloud/php occ files:scan test.user

Jetzt war mein Ansatz das Ganze in eine*.sh Datei zu packen, aber irgendwie führt er das nicht aus.
Ich denke, irgendwas mache ich falsch!

Ich mache ein Terminal auf und gehe in den Pfad wo der Script liegt. In meinem Fall /bin/ dann schreibe ich:

sh ~/rescanoc.sh 

als Ergebnis kommt:
sh: 0: Can't open /root/rescanoc.sh  

Was mache ich falsch?

Content-Key: 352213

Url: https://administrator.de/contentid/352213

Printed on: April 19, 2024 at 20:04 o'clock

Member: falscher-sperrstatus
Solution falscher-sperrstatus Oct 19, 2017 updated at 15:49:10 (UTC)
Goto Top
imho und ohne Gewähr:
php -v /path/to/file.php

ach und
chmod +x file.sh
Member: zeroblue2005
zeroblue2005 Oct 19, 2017 at 15:59:13 (UTC)
Goto Top
Hi,

ausführbar hatte ich die Datei schon gemacht! Aber die Zeile 1 zeigt doch nur die PHP-Version an ich möchte das ganze aber via sh ausführen die Datei heisst ja auch rescanoc.sh und liegt im Ordner /bin/
Member: Arano
Solution Arano Oct 19, 2017 updated at 17:08:15 (UTC)
Goto Top
Hallo zeroblue,

Was du falsch machst !?
Mit "~/" referenzierst du das Home-Verzeichnis deines Benutzers mit dem die das Kommando ausführst.
Da du dich offensichtlich als "root" eingloggt hast wird aus "~/script.sh" -> "/root/script.sh" und das erkennst du nun auch an der Fehlermeldung die eben diese Datei nicht finden/öffnen kann.

Du willst die Datei im aktuellen Verzeichnis ausführten, dann verwende anstelle der Tilde den Punkt.
sh ./script.sh

Wenn die Datei eine Shebang-Zeile enthält (Zeile 1 = #!/pfad/zu/parser) kann sie auch direkt ausgeführt werden. (Wenn die Datei ausführbar ist)
./script.sh


~Arano
Member: zeroblue2005
zeroblue2005 Oct 19, 2017 updated at 17:30:56 (UTC)
Goto Top
Habe es hinbekommen, mit:

#!/bin/bash
cd /var/www/owncloud/
sudo -u www-data php occ files:scan test.user
exit

Ich wusste nicht bei einer Shell Script unsichtbar das Ding ausgführt wird, habe dann -x das sichtbar gemacht, sorry für die dumme Fragen, musste mich erst mal darei denken face-wink
Member: Arano
Solution Arano Oct 19, 2017 at 17:41:13 (UTC)
Goto Top
Na schön das es läuft.

...aber "x" hat nichts mit sichbar oder unsichtbar zu tun...
http://www.shellbefehle.de/befehle/chmod/


~Arano
Member: falscher-sperrstatus
Solution falscher-sperrstatus Oct 19, 2017 at 18:52:31 (UTC)
Goto Top
War wohl ein zu langer Tag...face-smile

Streich das -v, das php hat dir aber wohl dennoch gefehlt + der Pfad...