Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

batch - Kommandos zu einer späteren Zeit ausführen

&pagelevel(4)&pagelevel

(execute commands at a later time)


batch liest Kommandos von der Standard-Eingabe, setzt sie in eine Warteschlange und führt sie aus, sobald die Systembelastung es zulässt.

Wenn Sie die Standard-Ausgabe und Standard-Fehlerausgabe der auszuführenden Kommandos nicht umgelenkt haben, wird Ihnen die Ausgabe mit mailx geschickt. Die Umgebungsvariablen, das aktuelle Dateiverzeichnis, die für neue Dateien gültigen Zugriffsrechte (siehe umask) und die maximal zulässige Dateigröße (siehe ulimit) bleiben erhalten. Offene Dateien und Prioritäten werden nicht vererbt. Das Kommando trap (eingebautes Shell-Kommando zum Abfangen von Signalen) wird aufgehoben.

batch schreibt die Auftragsnummer und die berechnete Ausführungszeit auf die Standard-Fehlerausgabe.

Aufträge, die mit batch erteilt werden, bleiben auch dann erhalten, wenn der Auftraggeber mit exit die POSIX-Shell beendet oder das POSIX-Subsystem beendet wird. Die Aufträge müssen nicht neu gestartet werden.

batch verhält sich genau wie at -qb ohne zusätzliche Option.

Vor dem Aufruf beachten

Die Benutzerkennung muss eine Standardabrechnungsnummer für den rlogin-Zugang haben. Diese kann mit den Kommandos ADD-USER, MODIFY-USER-ATTRIBUTES oder ADD-POSIX-USER zugewiesen werden.

Wenn die Datei /usr/lib/cron/at.allow existiert, dann dürfen Sie das Kommando batch nur dann aufrufen, wenn Ihre Benutzerkennung in dieser Datei steht.

Wenn die Datei /usr/lib/cron/at.allow nicht existiert, dann dürfen Sie das Kommando batch nur dann aufrufen, wenn Ihre Benutzerkennung nicht in der Datei /usr/lib/cron/at.deny steht.

Wenn weder /usr/lib/cron/at.allow noch /usr/lib/cron/at.deny existieren, dann darf nur der POSIX-Verwalter batch aufrufen.

Existiert z.B. nur die leere deny-Datei, so dürfen alle Benutzer batch aufrufen.

Die allow/deny-Dateien darf nur der POSIX-Verwalter anlegen und ändern. Sie enthalten pro Zeile eine Benutzerkennung.

Syntax


batch
kommando ...
CTRL
+D oder @@d

kommando

Beliebiges Kommando oder Shell-Prozedur. Sie können kommando mehrmals, jeweils durch Strichpunkt ; oder Neue-Zeile-Zeichen getrennt, angeben. Eine so entstandene Kommandoliste läuft unter einer Auftragsnummer.

Fehler

at: you are not authorized to use at. Sorry.

Sie dürfen batch nicht aufrufen. Siehe „Vor dem Aufruf beachten“.

Datei

/usr/lib/cron/at.allow

Liste der Benutzerkennungen mit Ausführrecht für batch. In jeder Zeile steht jeweils eine Benutzerkennung.

/usr/lib/cron/at.deny

Liste der Benutzerkennungen ohne Ausführrecht für batch. In jeder Zeile steht jeweils eine Benutzerkennung.

/var/spool/cron/atjobs

Dateiverzeichnis, in dem die noch nicht bearbeiteten batch-Aufträge in einzelnen Dateien aufgelistet werden. Für jeden batch-Auftrag gibt es eine eigene Datei mit dem Dateinamen auftragsnummer.b.

Variable

SHELL

bestimmt den Namen eines Kommandointerpreters, um den at-Auftrags aufzurufen. Ist diese Variable nicht gesetzt oder hat den Wert 0, wird sh verwendet. Ist diese Variable auf einen Wert als sh gesetzt, ist das weitere Verhalten implementierungsabhängig.

TZ

bestimmt die Zeitzone. Der at-Auftrag wird zum Zeitpunkt -t zeit oder zeitpunkt ausgeführt, relativ zu der in TZ bestimmten Zeitzone. Wenn zeitpunkt eine Zeitzone bestimmt, wird TZ überschrieben. Wenn zeitpunkt keine Zeitzone bestimmt und TZ nicht gesetzt ist oder den Wert 0 hat, wird der entsprechende Standardwert verwendet.

Internationale Umgebung

Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos batch:

LANG

Gibt einen Standardwert für die Variablen für die internationale Umgebung an, die nicht gesetzt oder Null sind. Ist LANG nicht gesetzt oder Null, wird der entsprechende Standardwert der internationalen Umgebung verwendet. Enthält eine der Internationalisierungsvariablen eine ungültige Einstellung, verhält sich das Kommando so, als sei keine der Variablen definiert worden.

LC_ALL

Ist diese Variable auf einen Wert gesetzt, d. h. ist sie nicht leer, überschreibt dieser Wert die Werte aller übrigen Internationalisierungsvariablen.

LC_CTYPE

Legt die internationale Umgebung für die Interpretation der Byte-Folgen eines Datentexts als Zeichen fest (z.B. Singlebytezeichen im Unterschied zu Mehrbytezeichen in Argumenten und Eingabedateien).

LC_MESSAGES

Legt die internationale Umgebung für Format und Inhalt der Diagnosemeldungen fest, die in die Standardfehlerausgabe geschrieben werden.

LC_TIME

Legt das Format und Inhalt der Datums- und Zeitangaben fest, die von batch geschrieben werden.

NLSPATH

Legt den Pfad der Meldungsdateien für LC_MESSAGES fest.

Beispiel

Im folgenden Beispiel wird die Standard-Eingabe umgelenkt, so dass batch seinen Auftrag aus der Datei auftraege liest:

$ batch < auftraege

job 604763316.b at Mon Mar 9 14:48:36 2009

batch führt die Aufträge, die in der Datei auftraege stehen, der Reihe nach als Hintergrundprozesse aus. Nach Beendigung können Sie sich das Ergebnis mit mailx auf dem Bildschirm ausgeben lassen.

Siehe auch

at, crontab, mailx, ulimit