Időzített parancsfeldolgozás
at
# Megadott időpontban futtathatunk programokat
-f todo 23.59 : előre megírt parancsainkat (todo fájlban) 23:59-kor lefuttatja az at.
# Idő formátumok
# 13.13 01.01.02 : 13 óra 13 perc, 2002, január 1
# 2pm tomorrow : honlap délután 2
# 1am Sun : hajnali 1 óra, vasárnap
atq
# Az at várakozási sorrendjét ismerteti
atrm pid
# Az at várakozási sorából való eltávolítás, Process ID alapján
cron
# A Linux feladatütemezője
# /etc/cron.d ; /etc/cron.daily ; /etc/cron.weekly
crontab -l : kilistázza a belépett user beállított ütemezéseit
crontab -e : Editáljuk a belépett user ütemezéseit
Cron job paraméterezése
-----------------------
Perc Óra Hónap napja Hónap Hét napja Parancs
(0-59) (0-23) (1-31) (1-12 v. Jan-Dec) (0-6 v Vas.-Szo.) Parancs
Példák
------
0 2 12 * 0,6 ping 192.168.1.1
Minden hónap minden szombatján és vasárnapján amelyek 12.-ére esnek, 2:00-kor megpingeli a címet.
30 10 * * * ping 192.168.1.1
Minden nap, 10:30 kor megpingeli a címet.
00 1-8,12-17 * * * ping 192.168.1.1
Minden nap, 1:00-től 8:00-ig és 12:00-től 17:00-ig minden óra 0. percében fut
Alkalmazhatunk például vesszőt is, az első rublikába írva "0,30" jelenti minden óra
0. illetve 30. percét, illetve intervallum is megadható.
További példák
--------------
@reboot parancs : A következő indításnál lefutó parancs.
@weekly :"0 0 * * 0" : Hetente egyszer fut le, vasárnap éjfélkor.
@daily :"0 0 * * *" : Naponta egyszer fut le, éjfélkor.
@midnight :"0 0 * * *" : éjfélkor, ekv. az előzővel.
@hourly :"0 * * * *" : Minden egész órakor fut le.
Cron job hibacsatorna /dev/null-ba irányítása
---------------------------------------------
0 1 5 10 * /path/script.sh >/dev/null 2>&1
# amennyiben szükséges, hogy az adott job hibacsatornája ne árassza el a /var/log-ot, úgy a fenti
# kivastagított eljárást szükséges alkalmazni
date
# Dátum kiíratása vagy beállítására használatos program
+%F : 2011-11-04 formátumban írja ki az aktuális dátumot.
+%Y%m%d : 20111104 formátumban írja ki az aktuális dátumot.
-d-2day +%F : 2011-11-02 formátumban írja ki a 2 nappal korábbi dátumot.
110411532011 : Beállítja a dátumot November 04., 11:53-ra, 2011-ben. (Honap Nap Ora Perc Ev)
-d '+3 hour' +%Y.%m.%d" "%H:%M.%S : az aktuális dátumhoz kéepst 3 órával későbbi dátumot adja meg 2017.01.05 14:07.12 formátumban.
sleep 5 parancs
# 5 Másodperc múlva indítja a "parancs"-ot.
schedutils
# Linux rendszer ütemező
screen
# Ablakkezelő, virtuális terminál emulátorral.
# Háttérbeli programok futtatásához alkalmazható program.
screen : Egy új VT-t (virtuális terminált) indítható
Ctrl+a+d : bill. kombinációval tehetjő háttérbe.
screen -ls : screen-ek listázása
screen -d -m -S name : elindítja a háttérben a screen-t "name" névvel
screen -x name : name nevű terminál hozható előtérbe
screen -R PID : paranccsal lehet előtérbe hozni. (PID - processID, ps aux-al megnézhető)
# SCREEN-ben kiadható billentyű kombinációk
-------------------------------------------
Ctrl+a+d : bill. kombinációval tehető háttérbe.
Ctrl+a+? : előhozhatő a legfontosabb bill. kombinációkat
Ctrl+a+c : új ablak ltérehozása
Ctrl+a+p VAGY n : előző vagy következő ablakra ugrás. (previous, next)
Ctrl+a :kill : aktuális screen lelövése
Ctrl-a :acladd USER : USER nevű felhasználó engedélyezése becsatlakozásra (lásd MULTIUSER MODE)
# MULTIUSER MODE
# --------------
#
# A screen többfelhasználós üzemmódja
# Amennyiben kontrollált körülmények között szükséges beengedni valakit a gépre közös shellt
# használva, úgy az alábbi lépéseket kell alkalmazni
screen
# screen indítása a kiszemelt többfelhasználós gépen
Ctrl+a :multiuser on
# Ezt begépelve aktiválható az adott session-ön a többfelhasználós mód.
# Másik oldalnak szükséges ismernie az adott user nevét/jelszavát, illetve SSH-n be kell tudnia
# csatlakozni a gépre. Ha mindez megvan, és SSH-n bejött.:
screen -x
#Voila!
time command
# A command lefutási idejét méri
command &
# command háttérbeli futtatása
command1 && command2
# command1 visszatérési értékének függvényében command2 is lefuthat. (ha command1 sikeres volt)