2017-08-02 3 views
-1

Ich versuche, ein bestimmtes Skript in/Logann/myFile durch Crontab-Datei auszuführen.So führen Sie ein Skript mit Crontab

Ich habe schon viele Möglichkeiten ausprobiert, aber niemand macht irgendwelche Ergebnisse.

ich diese Zeile in crontab mein Skript

26 10 * * * root cd/Logann & & ./apagar_temp_tomcat

(Die Zeit, die ich zu testen ändern)

anrufen und mein Skript ist

#!/bin/sh

rm /tmp/tomcat7-tomcat7-tmp/*.tmp

rm /tmp/tomcat7-tomcat7-tmp/*.xml

Ich will nur dieses Skript ausführen. Dieses Skript löscht alle .tmp/.xml Dateien im Ordner tomcat7-tomcat7-tmp.

Irgendwelche Ideen?

Danke Jungs!

Antwort

0

cron Jobs werden in einer eigenen Shell ausgeführt. Sie können also nicht erwarten, tedvs auf Ihrer Konsole zu sehen.

Versuchen Sie, etwas in Datei zu schreiben, zum Beispiel

* * * * * echo tedvs > file_in_your_directory.txt 
+0

Hmm, ich verstehe. Eigentlich war Echo nur ein Test. Ich möchte wirklich diese Befehle ausführen, um diese Dateien zu löschen rm /tmp/tomcat7-tomcat7-tmp/*.tmp rm /tmp/tomcat7-tomcat7-tmp/*.xml – user1863014

+0

Tut mir leid, es hat hier gut funktioniert, das Problem war das Ich habe mit Echo getestet und wie du gesagt hast, Cron läuft in einer anderen Shell. Deshalb dachte ich, dass es falsch ist. Vielen Dank! – user1863014

0

nur eine Funktion in der Datei vornehmen und die Datei oder Funktion in cron nach Ihrem Zeitintervall nennen. Ich tat dies in PHP

 
shell_exec(\'(crontab -l ; echo "* * * * * curl www-data http://localhost/sp/delete.php") | crontab -\');