Warum kann ich den Hintergrundprozess von "at now <jobsfile" auf dem Mac nicht ausführen?

0

Ich kann einen Prozess im Hintergrund von ausführen

$ someprog > logfile &

aber wenn ich es mache

$ at now < jobsfile

dann passiert nichts außer Drucken

job 1 at Wed Sep 29 19:12:40 2010
Andrei
quelle

Antworten:

2

atrun ist in Mac OS X 10.6 standardmäßig deaktiviert (siehe die Manpage und den Abschnitt "IMPLEMENTIERUNGSHINWEISE" im Benutzerhandbuch) at Manpage). Führen Sie zum Aktivieren Folgendes aus:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.atrun.plist

Ps. Möglicherweise möchten Sie zuerst die Jobwarteschlange überprüfen und / oder löschen. Andernfalls werden alle von Ihnen eingereichten Testaufträge auf einmal ausgelöst. atq und atrm sind die relevanten Befehle (und sie funktionieren einwandfrei, bevor sie aktiviert werden atrun ).

Gordon Davisson
quelle
0

Was macht jobsfile? Wenn eine Ausgabe an stdout oder stdin gesendet wird, wird diese an Sie gesendet.

Dennis Williamson
quelle
jobsfile enthält someprog > logfile. Es ist ein sehr langer Rechenlauf über PVM (22 Prozesse). Ich sehe keine Aktivität im zweiten Fall, und die logfile wird nicht erstellt.
Andrei
@Andrei: Sie sehen keine Aktivität wo? at Führt den Job ohne tty aus. Funktioniert das?: echo 'date > /tmp/at.$$.out' | at now Es sollte eine Datei namens erstellen /tmp/at.PID.out (wobei "PID" eine Zahl ist), die ein Datum / eine Uhrzeit enthält. Tut auch at now -f jobsfile (anstatt umzuleiten) arbeiten?
Dennis Williamson
Kein Ergebnis in beiden Fällen. Der erste gedruckt job 2 at Wed Sep 29 22:49:40 2010, der zweite gedruckt at: garbled time. Dies geschieht in OS X 10.6.4.
Andrei