at(1) at(1)
NAME
at - Kommandos zu einem späteren Zeitpunkt ausführen
SYNTAX
at [-m] [-f skript] [-q warteschlange] -t zeitpunkt Format 1
at [-m] [-f skript] [-q warteschlange] [--] zeitpunkt Format 2
at -l [auftragsnummer]... Format 3
at -r auftragsnummer ... Format 4
BESCHREIBUNG
Das Kommando at
- liest Kommandos von der Standardeingabe oder aus einem Shell-Skript
und führt sie zu einem späteren Zeitpunkt, den Sie angeben, aus
(Format 1 und 2)
- gibt auf die Standardausgabe aus, welche mit at oder batch [siehe
batch(1)] erteilten Kommandoaufträge noch nicht bearbeitet wurden
(Format 3)
- löscht Kommandoaufträge, die mit at oder batch erteilt wurden (For-
mat 4)
Wenn Sie die Standardausgabe und Standardfehlerausgabe der auszufüh-
renden Kommandos nicht umgelenkt haben, wird Ihnen die Ausgabe von
Format 1 und Format 2 mit mail geschickt. Die Umgebungsvariablen, das
aktuelle Verzeichnis, die für neue Dateien gültigen Zugriffsrechte
[siehe umask(1)] und die maximal zulässige Dateigröße [siehe
ulimit(1)] bleiben erhalten. Offene Dateien und Prioritäten werden
nicht vererbt. Das Kommando trap(1) (eingebautes Shell-Kommando zum
Abfangen von Signalen) wird aufgehoben.
at schreibt die Auftragsnummer und die angegebene Ausführungszeit auf
die Standardfehlerausgabe. Aufträge, die mit at erteilt werden, werden
auch dann abgearbeitet, wenn der Auftraggeber sich vom System abgemel-
det hat.
Vor dem Aufruf beachten
Wenn die Datei /etc/cron.d/at.allow existiert, dann dürfen Sie das
Kommando at nur aufrufen, wenn Ihre Benutzerkennung in dieser Datei
steht.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
Wenn die Datei /etc/cron.d/at.allow nicht existiert, dann dürfen Sie
das Kommando at nur aufrufen, wenn Ihre Benutzerkennung nicht in der
Datei /etc/cron.d/at.deny steht.
Wenn weder /etc/cron.d/at.allow noch /etc/cron.d/at.deny existieren,
dann darf nur der Systemverwalter at aufrufen.
Existiert z. B. nur die leere deny-Datei, so dürfen alle Benutzer at
aufrufen.
Die allow/deny-Dateien darf nur der Systemverwalter anlegen und
ändern. Sie enthalten pro Zeile eine Benutzerkennung.
OPTIONEN
Format 1: Kommandos zu einer späteren Zeit ausführen
at [-m] [-f skript] [-q warteschlange] -t zeitpunkt
-f skript
at liest die auszuführenden Kommandos aus dem angegebenen Shell-
Skript.
-f nicht angegeben:
at liest die auszuführenden Kommandos von der Standardeingabe.
Sie können mehrere Kommandos angeben, jeweils durch Strichpunkt
(;) oder Neue-Zeile-Zeichen getrennt. Eine so entstandene Komman-
doliste läuft unter einer Auftragsnummer. Die Kommandoliste been-
den Sie mit <CTRL-D>.
-m Wenn sich ein Auftrag beendet hat, schickt at dem Benutzer über
mail eine entsprechende Nachricht. Dies geschieht jedoch nur
dann, wenn der Auftrag nicht bereits das Senden einer Nachricht
veranlaßt hat.
-q warteschlange
Durch die Option -q wird die Warteschlange im Verzeichnis
/var/spool/cron spezifiziert, in die der Auftrag eingereiht wer-
den soll.
warteschlange kann sein:
a für die standardmäßige Warteschlange für Aufträge des Komman-
dos at.
b für die standardmäßige Warteschlange für Aufträge des Komman-
dos batch.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
-t zeitpunkt
Gibt den Ausführzeitpunkt für die Kommandos an. zeitpunkt geben
Sie wie folgt an:
[[CC]YY]MMDDhhmm[.SS]
CC Die ersten beiden Ziffern einer Jahreszahl (Jahrhundert): 19
oder 20
CC nicht angegeben:
Ist die zweistellige Jahreszahl größer 69, wird das aktuelle
Jahrhundert angenommen, sonst das folgende.
YY Jahreszahl zweistellig. Es dürfen nur Zahlen >69 und <38
eingegeben werden. Ist die angegebene Jahreszahl <38, liegt
sie über dem Jahr 2000.
YY nicht angegeben:
Das aktuelle Jahr wird angenommen.
MM Monatsangabe zweistellig (01 bis 12)
DD Angabe des Tages zweistellig (01 bis 31)
hh Angabe der Stunde zweistellig (00 bis 23)
mm Angabe der Minute zweistellig (00 bis 59)
SS Angabe der Sekunde zweistellig (00 bis 61)
Die Werte 60 und 61 sind für Schaltsekunden vorgesehen.
SS nicht angegeben: Es werden 0 Sekunden angenommen.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
Format 2: Kommandos zu einer späteren Zeit ausführen
at [-m] [-f skript [-q warteschlange] [--] zeitpunkt
Die Optionen sind unter Format 1 beschrieben.
-- Ende der Optionenliste. Die Angabe ist nötig, wenn
zeitpunkt mit - beginnt.
zeitpunkt Gibt den Ausführzeitpunkt für die Kommandos an. zeitpunkt
geben Sie wie folgt an: Zeit [Datum] [+Inkrement]
Zeit ziffern[suffix] oder sondername
ziffern
[h]h Eine und zwei Ziffern werden
als Stunden interpretiert.
hhmm Vier Ziffern werden als
Stunden und Minuten inter-
pretiert.
[h]h:[m]m Durch Doppelpunkt : getrenn-
te Ziffern werden als Stun-
den und Minuten interpre-
tiert.
suffix
am Interpretation als vor 12
Uhr mittags
pm Interpretation als nach 12
Uhr mittags
ohne am, pm Interpretation im 24-Stun-
den-Format
utc Interpretation als Greenwich
Meantime
zulu Interpretation als Greenwich
Meantime
sondername
noon mittags
midnight mitternachts
now jetzt; at now ohne Inkrement
führt allerdings zu der Feh-
lermeldung "Too late" (zu
spät).
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
Datum monat tag[,jahr] oder wochentag [nextweek] oder
speziellertag
monat
jan Januar
feb Februar
mar März
apr April
may Mai
jun Juni
jul Juli
aug August
sep September
oct Oktober
nov November
dec Dezember
tag Zahl zwischen 1 und 31, entsprechend der
Länge des Monats
jahr Jahreszahl, für die die Datumsangabe gel-
ten soll
nextyear das auf das aktuelle Jahr
folgende Jahr
jahr nicht angegeben: Das aktuelle Jahr
wird angenommen.
wochentag
mon[day] Montag
tue[sday] Dienstag
wed[nesday] Mittwoch
thu[rsday] Donnerstag
fri[day] Freitag
sat[urday] Samstag
sun[day] Sonntag
nextweek
die auf die aktuelle Woche folgende Woche
speziellertag
today heute
tomorrow morgen
nextday der auf den aktuellen Tag
folgende Tag
Die Angabe nextday bedeutet, daß der Auf-
trag einen Tag später ausgeführt wird.
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
Wenn die Zeitangabe vor der aktuellen Uhr-
zeit liegt, interpretiert at den nächsten
Tag als aktuellen Tag. Wird z. B. am
1.7.90 um 11:00 Uhr der Auftrag at 10
nextday erteilt, so wird er erst am 3.7.90
um 10:00 Uhr ausgeführt. at 14 nextday
bewirkt hingegen, daß die Ausführung am
2.7.90 um 14:00 Uhr erfolgt.
Datum nicht angegeben:
- entspricht der Angabe today, wenn die Zei-
tangabe (gerundet auf die Minute) nach der
aktuellen Uhrzeit liegt.
- entspricht der Angabe tomorrow, wenn die
Zeitangabe (gerundet auf die Minute) vor der
aktuellen Uhrzeit liegt.
- entspricht der Angabe now, wenn die Zeitan-
gabe (gerundet auf die Minute) gleich der
aktuellen Uhrzeit ist.
+Inkrement Ist eine positive ganze Zahl, auf die eine der
folgenden Zeiteinheiten folgen muß:
minute[s] Minute(n)
hour[s] Stunde(n)
day[s] Tag(e)
week[s] Woche(n)
month[s] Monat(e)
year[s] Jahr(e)
Beispiel: at können Sie u. a. in folgenden Formen angeben:
at 0815am jan 24
at 8:15am jan 24
at 5pm friday
at now +1hour
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
Format 3: Nicht-bearbeitete Aufträge ausgeben
at -l [auftragsnummer]...
-l [auftragsnummer]
at listet den Auftrag mit auftragsnummer auf, wenn er noch nicht
bearbeitet wurde. auftragsnummer ist die Nummer, die auf die
Standardfehlerausgabe ausgegeben wird, wenn ein Kommandoauftrag
mit at, batch oder cron erteilt wird.
auftragsnummer nicht angegeben:
at listet alle Aufträge, die noch nicht bearbeitet wurden, mit
ihren Auftragsnummern auf.
Format 4: Aufträge löschen
at -r auftragsnummer ...
-r auftragsnummer
at löscht den Auftrag auftragsnummer, den Sie zuvor mit at oder
batch erteilt haben.
auftragsnummer ist die Nummer, die auf die Standardfehlerausgabe
ausgegeben wird, wenn ein Kommandoauftrag mit at oder batch
erteilt wird. Sie können mehrere Auftragsnummern, getrennt durch
Leerzeichen, angeben. Nur der Systemverwalter hat das Recht, Auf-
träge von anderen Benutzern zu löschen.
FEHLERMELDUNGEN
Die häufigsten Fehlermeldungen sind:
at: bad date specification
Sie haben das Datum in einem falschen Format angegeben.
at: too late
Sie haben für Zeit "now" angegeben. Da "now" (jetzt) den Zeitpunkt des
Aufrufs von at angibt, erfolgt eine Ausführungsanweisung immer zu
spät.
at: you are not authorized to use at. Sorry.
Sie dürfen at nicht aufrufen (siehe Vor dem Aufruf beachten).
INTERNATIONALE UMGEBUNG
Die Umgebungsvariable LCMESSAGES bestimmt die Sprache der Meldungs-
texte.
Die Umgebungsvariable LCTIME bestimmt das Format der Datums- und
Zeitangaben.
Seite 7 Reliant UNIX 5.44 Gedruckt 11/98
at(1) at(1)
Wenn LCMESSAGES oder LCTIME nicht oder als leere Zeichenkette defi-
niert ist, wird der Wert von LANG als Standardwert für die jeweils
nicht gesetzte oder leere Variable herangezogen. Ist auch LANG nicht
oder als leere Zeichenkette definiert, verhält sich das System so, als
wäre es nicht internationalisiert.
Hat eine der Variablen für die internationale Umgebung einen ungülti-
gen Wert, verhält sich das System so, als wäre keine Variable gesetzt.
Die Umgebungsvariable LCALL bestimmt die gesamte internationale Umge-
bung. LCALL hat Vorrang vor allen anderen Umgebungsvariablen im
Bereich der Internationalisierung.
BEISPIELE
Es soll am 1. April um 13 Uhr am Terminal tty013 das aktuelle Datum
und die Zeichenkette April, April! ausgegeben werden:
$ at 1pm apr 1 <RETURN>
echo `date`": April, April!" >> /dev/tty013 <RETURN>
<CTRL-D>
DATEIEN
/etc/cron.d/at.allow
Liste der Benutzerkennungen mit Ausführrecht für at. In jeder
Zeile steht jeweils eine Benutzerkennung.
/etc/cron.d/at.deny
Liste der Benutzerkennungen ohne Ausführrecht für at. In jeder
Zeile steht jeweils eine Benutzerkennung.
/var/spool/cron/atjobs
Verzeichnis, in dem die noch nicht bearbeiteten at-Aufträge in
einzelnen Dateien aufgelistet werden. Für jeden at-Auftrag gibt
es eine eigene Datei mit dem Dateinamen auftragsnummer.a.
/etc/cron.d/queuedefs
Datei, die Ablaufinformationen enthält.
SIEHE AUCH
atq(1), atrm(1), batch(1), calendar(1), date(1), kill(1), mail(1),
nice(1), ps(1), sh(1), sort(1), ulimit(1), cron(1M), getdate(3C),
environ(5).
Seite 8 Reliant UNIX 5.44 Gedruckt 11/98