2017-10-03 3 views
-1

ich einen Cronjob auf Datei, die wie folgt angegeben wurde: 0 * * * * root bash /data/daily.shLinux cronjob wget statt STDOUT

Innerhalb dieser daily.sh ist ->/data/get.sh https://www.xxxxxxx.com/ccc/ 0

Wie Sie sehen können, get.sh zwei nehmen Argumente, die erste URL und die rekursive Tiefe. Das Skript ruft eine weitere get.sh mit einem inkrementierten Tiefenzähler und einer anderen URL auf, die aus dem ersten Ausführungsergebnis verschrottet wird und stoppt, bis sie eine bestimmte Tiefe erreicht.

Innerhalb der get.sh, ich bin eine Website mit diesem Befehl Verschrottung

wget -O- $1 > main.htm 

Das Problem ist, wird main.htm nicht erstellt, wenn dieses Skript über crontab laufen gelassen wird. Das Protokoll sagt, dass es in 'STDOUT' gespeichert wird, während ich es manuell auf 'main.htm' speichere. Wie löst man das?

+0

Können Sie versuchen, den vollständigen Pfad zur Datei main.htm zu geben. –

+0

ah es funktioniert mit Kombination für die Antwort unten. –

+0

Stack Overflow ist eine Website für Programmier- und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/) wäre ein besserer Ort, um zu fragen. – jww

Antwort

1

Ausgabe in Datei, indem Sie folgendermaßen vorgehen.

wget -O {output-filename} $1 
+0

oh es funktioniert mit dem vollständigen Pfad hinzufügen, danke :) –