[[Vorlage(InArbeit, 31.03.10, "Heinrich Schwietering")]] [[Vorlage(Getestet, general)]] {{{#!vorlage Wissen [:Anwendungen_hinzufügen:Anwendungen hinzufügen] [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte] }}} [[Inhaltsverzeichnis()]] Das Konsolenprogramm at kann dazu genutzt werden, Programme zu einem bestimmten Zeitpunkt (einmalig) auszuführen, diese Aufträge abzurufen oder zu löschen. = Installation = at ist bei einer Ubuntu-Installation automatisch mit installiert. Andernfalls kann das Programm über das gleichnamige Paket * '''at''' (''universe'') installiert [1] werden. = Bedienung = Aufgerufen werden kann es durch [2] {{{#!vorlage Befehl at }}} und [[Vorlage(Tasten, enter)]] Anschließend gibt man die gewünschten Befehle ein und bestätigt mit [[Vorlage(Tasten, alt+D)]]. Die standardmäßig erscheinende Fehlermeldung {{{ warning: commands will be executed using /bin/sh }}} gibt lediglich an, dass die Befehle in der Standard-Shell [unter Ubuntu: [:Dash:]) und nicht in der [:Bash:] ausgeführt werden. Dies hat jedoch keine Konsequenzen, sofern man nicht mit at ein Shell-Skript ausführt, welches Bash-spezifische (bzw. zsh, ksh...) Befehle nutzt. Der Hinweis kann also im Normalfall einfach ignoriert werden. ||<-2 rowclass="titel"> Zeitangaben in at || || Format || Bedeutung|| || `today` || Heute || || `tomorrow` || Morgen|| || `noon tomorrow` || Um 12:00 Uhr am nächsten Tag; mit at kann auch "`teatime`" (= 16:00 Uhr) oder "`midnight`" (= Mitternacht) verwendet werden.|| || `now` || Jetzt || ||`now + 10min` || In zehn Minuten; möglich sind auch Angaben zu Stunden ("`hours`"), Tagen ("`days`"), Wochen ("`weeks`") und Monaten ("`months`") .|| || `20:15` || Heute um 20:15 Uhr|| || `09:00pm` || Heute um 21:00 Uhr (mit Angabe von "`am`" heute um 9.00 Uhr morgens, ohne Angabe die Zeit im 24-Stunden-Format).|| || `2/23/10` || Am 23. Februar 2010; mögliche Schreibweisen für das Datum sind z.B. "`2.23.10`" und "`22310`"; der Monat steht hier __vor__ dem Tag.|| Die Angaben können sinngemäß kombiniert werden, ein Datum muss dabei immer nach einer Uhrzeit angegeben werden! Ein at-Job, der beim Rechnerstart bereits in der Vergangenheit liegt, kann nicht ausgeführt werden (siehe dazu [:Cron#anacron:anacron]). Weitere Einzelheiten in der [:man:Manpage] des Programms. Abgerufen werden können die laufenden Anweisungen mittels {{{#!vorlage Befehl atq }}} Dabei werden allerdings nur die Daten ausgegeben, nicht aber, welches Kommando ausgeführt werden soll. Diese Angaben kann man in '''/var/spool/cron/atjobs/''' in Erfahrung bringen, dazu sind Root-Rechte[3] nötig. Via {{{#!vorlage Befehl atrm }}} können die Aufträge gestoppt werden. == Alternative Syntax == Um at z.B. in Skripten mit einer Befehlszeile zu nutzen, kann auch folgende Syntax verwendet werden: {{{#!vorlage Befehl befehl | at }}} Ein Beispiel zur Verwendung findet sich in [:Skripte/TV-Skript:]. == batch == Der Befehl batch, der Teil von at ist, dient dazu, Anweisungen dann auszuführen, wenn die Auslastung des Rechners es zulässt. Die Ausführung erfolgt, sobald die die durchschnittliche Systemlast unter 1.5 sinkt, oder dem Wert der in den Spezifikation zum at-Daemon, atd, festgelegt ist. = Problembehebung = == Befehle werden nicht gestartet == Da at die Umgebungsvariable "`DISPLAY`" nicht von sich aus setzen kann, muss diese bei Programmen mit grafischer Benutzeroberfläche manuell angegeben werden: {{{#!vorlage Befehl user@host:~$ at now +1min warning: commands will be executed using /bin/sh at> DISPLAY=:0 at> }}} wäre der benötigte Syntax. [wikipedia_en:End-of-transmission_character:EOT] steht dabei für "End of Transition", in Unix-Systemen normalerweise [[Vorlage(Tasten, strg + D)]]. = Alternativen = [:Cron:] bietet die Möglichkeit, regelmäßig auszuführende Aktionen zu programmieren, kann aber auch für einzelne Aufrufe verwendet werden. = Links = * [http://www.linux-user.de/ausgabe/2006/02/094-zubefehl/ Artikel zu at und cron] {de} aus der Zeitschrift "Linux User" (Ausgabe 02/06) * [http://pwet.fr/man/linux/commandes/posix/at ausführliche Dokumentation] {en} ---- #tag: Ubuntu, System, Shell, Übersicht, Hilfsmittel, Programmierung, Büro