Cum să vizualizezi și să listezi sarcinile Cron folosind Crontab
Utilitarul cron pe sistemele de operare de tip Unix permite utilizatorilor să programeze sarcini (comenzi sau scripturi) pentru a rula automat la momente sau intervale specifice. Indiferent dacă întrețineți un server sau gestionați sarcini automate pe o mașină locală, cron este un instrument esențial pentru administratorii de sistem și dezvoltatori.
Acest articol explică cum să vizualizați și să listați sarcinile cron folosind comanda
crontabCe Este Comanda Crontab?
Crontab (prescurtare pentru “cron table”) este un fișier care definește sarcinile programate pentru daemonul cron. Fiecare utilizator de pe un sistem, inclusiv utilizatorul
rootO intrare crontab urmează această sintaxă:
* * * * * command_to_be_executed
| | | | |
| | | | +----- day of the week (0–7) (Sunday = 0 or 7)
| | | +---------- month (1–12)
| | +--------------- day of the month (1–31)
| +-------------------- hour (0–23)
+------------------------- minute (0–59)
Această structură permite un control precis asupra momentului în care sarcinile sunt executate, făcând cron un instrument puternic de automatizare.
Cum să Listați Sarcinile Cron Folosind Crontab
Comanda
crontab1. Vizualizați Sarcinile Cron ale Dvs.
Pentru a afișa sarcinile cron pentru utilizatorul care este conectat în prezent, rulați:
crontab -lAceastă comandă listează toate sarcinile cron programate pentru utilizatorul curent. Dacă nu există sarcini cron, poate returna o ieșire goală sau un mesaj care indică că nu este definit niciun crontab.
Exemplu de ieșire:
# m h dom mon dow command
0 0 * * * /home/user/backup.sh
30 2 * * 7 /home/user/scripts/cleanup.sh
În acest exemplu:
- Un script de backup rulează zilnic la miezul nopții.
- Un script de curățare rulează în fiecare duminică la 2:30 AM.
2. Listați Sarcinile Cron pentru Alt Utilizator
Dacă aveți
sudo-usudo crontab -l -u usernameÎnlocuiți
usernamesudo crontab -l -u johnAceasta afișează toate sarcinile cron programate pentru utilizatorul specificat.
3. Listați Sarcinile Cron la Nivel de Sistem
În plus față de sarcinile cron specifice utilizatorilor, există sarcini cron la nivel de sistem programate de sistem sau de utilizatorul root. Acestea sunt de obicei stocate în:
/etc/crontab/etc/cron.d//var/spool/cron/crontabs/
Pentru a vizualiza fișierul principal crontab al sistemului, rulați:
cat /etc/crontabExemplu de ieșire:
SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
Această configurație programează sarcini de întreținere a sistemului orar, zilnic, săptămânal și lunar.
Pentru a lista fișierele cron suplimentare ale sistemului, rulați:
ls /etc/cron.d/Fiecare fișier din acest director poate defini sarcini programate suplimentare pentru serviciile de sistem.
4. Vizualizați Sarcinile Cron în /var/spool/cron
Fișierele crontab specifice utilizatorilor sunt de obicei stocate în
/var/spool/cron/crontabsls /var/spool/cron/crontabsPentru a vizualiza conținutul fișierului crontab al unui utilizator specific:
cat /var/spool/cron/crontabs/usernameAceasta oferă aceeași ieșire ca
crontab -l -u usernameEditarea Sarcinilor Cron
Pentru a edita sau adăuga sarcini cron pentru utilizatorul curent, rulați:
crontab -eAceasta deschide fișierul crontab în editorul de text implicit. După salvare și ieșire, modificările au efect imediat.
Exemplu: rulați un script în fiecare zi la 3:00 AM:
0 3 * * * /home/user/script.shComenzi Comune pentru Listarea Crontab
- Listați sarcinile cron ale utilizatorului curent:
crontab -l - Listați sarcinile cron ale altui utilizator (sudo necesar):
sudo crontab -l -u username - Vizualizați crontab-ul sistemului:
cat /etc/crontab - Listați fișierele cron în /etc/cron.d/:
ls /etc/cron.d/ - Listați crontab-urile utilizatorilor:
ls /var/spool/cron/crontabs
Concluzie
Vizualizarea și listarea sarcinilor cron folosind
crontabPrin stăpânirea cron, puteți automatiza sarcini repetitive, gestiona backup-uri și menține o execuție constantă a scripturilor în întreaga dvs. mediu.
