Crontab in Linux: ESEMPI di pianificazione del lavoro

Sommario:

Anonim

Cos'è crontab?

Cron prende il nome dalla parola greca "Chronos" usata per indicare il tempo. È un processo di sistema che eseguirà automaticamente le attività secondo la pianificazione specifica. È un insieme di comandi utilizzati per eseguire attività di pianificazione regolari. Crontab sta per "cron table". Consente di utilizzare lo scheduler dei lavori, noto come cron per eseguire le attività.

Crontab è anche il nome del programma, che viene utilizzato per modificare quella pianificazione. È guidato da un file crontab, un file di configurazione che indica i comandi della shell da eseguire periodicamente per la pianificazione specifica.

In questo tutorial sul sistema operativo imparerai:

  • Cos'è crontab?
  • Perché usare CRONJOB?
  • Come usare cron in Linux?
  • Formato Linux Crontab
  • Come aggiungere / modificare Crontab
  • Come elencare Crontab
  • Esempi importanti di Crontab

Perché utilizzare Cronjobs?

Ecco i motivi per utilizzare Cronjobs in Linux:

  • Aiuta il sistema operativo a eseguire un backup pianificato dei file di registro o del database.
  • Elimina i vecchi file di registro
  • Archivia ed elimina le tabelle del database
  • Invia qualsiasi email di notifica come newsletter, email di scadenza della password
  • Pulizia regolare dei dati memorizzati nella cache
  • Crontab è un'opzione ideale per automatizzare i lavori Unix.
  • Viene utilizzato per automatizzare la manutenzione del sistema

Come usare cron in Linux?

Il pacchetto di sistema Linux ha un utile pianificatore di attività chiamato crontab. Crontab è popolare perché può essere programmato per eseguire un processo automatizzato come root. Pertanto, avere un processo automatizzato in esecuzione come root semplifica le modifiche al sistema. Hai solo bisogno di cambiare l'attività e quindi attendere fino a quando l'attività non viene riavviata.

Formato Linux Crontab

Crontab di Linux ha sei campi. I primi cinque campi definiscono l'ora e la data di esecuzione e il sesto campo viene utilizzato per l'esecuzione del comando.

Sintassi crontab:

[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]

  • Astrics (*): utilizzare per la corrispondenza
  • Definisci intervallo: consente di definire un intervallo con l'aiuto di trattini come 1-10 o 30-40 o jan-mar, lun-wed.
  • Definisci più intervalli: consente di definire vari intervalli con comandi separati come apr-jun, oct-dec.

Come aggiungere / modificare Crontab

L'utente può modificare i propri lavori crontab con l'aiuto del seguente comando crontab:

$ crontab -u -e

Il comando precedente aprirà la configurazione personale di crontab del tuo computer, che può essere modificata utilizzando il tuo editor di testo predefinito.

Non è necessario riavviare il crontab in quanto raccoglierà automaticamente le modifiche quando si utilizza il comando seguente.

$ crontab -l

Per rimuovere le tue attività crontab, usa il seguente comando.

$ crontab -r

Per aggiungere o aggiornare il lavoro in crontab, utilizzare il comando indicato di seguito.

crontab -e

Comando per modificare il crontab di un altro utente

crontab -u username -e

Come elencare Crontab

Comando per visualizzare le voci crontab dell'utente corrente

crontab -l

Comando per visualizzare le voci crontab di un utente specifico:

crontab -u username -l

Esempi importanti di Crontab

Ecco alcuni importanti esempi di Crontab

Descrizione Comando
Comando Cron per eseguire i vari lavori di pianificazione. Il comando indicato di seguito viene eseguito ogni giorno alle 7:00 e alle 17:00.
0 7,17 * * * /scripts/script.sh
Comando per eseguire un cron ogni 5 minuti.
*/5* * * * * /scripts/script.sh
Il comando Cron scheduler ti aiuta a eseguire l'attività ogni lunedì alle 5:00. Questo comando è utile per eseguire attività settimanali come la pulizia del sistema.
0 5 * * mon /scripts/script.sh
Il comando esegue lo script con un intervallo di 3 minuti.
*/3 * * * * /scripts/monitor.sh
Comando per pianificare un cron su cui eseguire per un mese specifico. Questo comando per eseguire attività eseguite nei mesi di febbraio, giugno e settembre. A volte è necessario pianificare un'attività per eseguire un'attività mensile selezionata.
* * * feb,jun,sep * /script/script.sh
Comando da eseguire nei giorni selezionati. Questo esempio verrà eseguito ogni lunedì e mercoledì alle 17:00.
0 17 * * mon,wed /script/script.sh
Questo comando consente a cron di essere eseguito il primo sabato di ogni mese.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Comando per eseguire uno script per un intervallo di 6 ore in modo che possa essere configurato come di seguito.
0 */6 * * * /scripts/script.sh
Questo comando pianifica un'attività da eseguire due volte il lunedì e il martedì. Usa le seguenti impostazioni per farlo.
0 4,17 * * mon,tue /scripts/script.sh
Pianifica il comando di un cron da eseguire ogni 15 secondi.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Comando per programmare le attività su base annuale. @yearly timestamp è = a "0 0 5 1 *". Questo esegue l'attività nel quinto minuto di ogni anno. Puoi usarlo per inviare i saluti del nuovo anno.
@yearly /scripts/script.sh
Attività di comando da eseguire su base mensile. @monthly timestamp è simile a "0 0 1 * *". Questa espressione di comando consente l'esecuzione di un'attività nel primo minuto del mese.
@monthly /scripts/script.sh
Comando per eseguire più attività utilizzando un singolo cron.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Comando per pianificare le attività da eseguire su base settimanale. @weekly timestamp è simile a "0 0 4 * sun". Viene utilizzato per eseguire le attività settimanali come la pulizia del sistema, ecc.
@weekly /bin/script.sh
L'attività verrà pianificata per essere eseguita su base giornaliera. @daily timestamp è simile a "0 2 * * *". Esegue l'attività nel secondo minuto di ogni giorno.
@daily /scripts/script.sh
Consente l'esecuzione delle attività su base oraria. @hourly timestamp è simile a "0 * * * *". Questo comando esegue un'attività nel primo minuto di ogni ora.
@hourly /scripts/script.sh
Consente l'esecuzione delle attività al riavvio del sistema. L'espressione @reboot è utile per quelle attività che il sistema desidera eseguire all'avvio del sistema. Ciò è utile per avviare automaticamente le attività in background.
@reboot /scripts/script.sh

Sommario:

  • Cron prende il nome dalla parola greca "Chronos" usata per indicare il tempo.
  • Cronjobs aiuta il sistema operativo a eseguire un backup pianificato dei file di registro o del database.
  • Il pacchetto di sistema Linux ha un utile pianificatore di attività chiamato crontab che può essere pianificato per eseguire un processo automatizzato come root.
  • Crontab di Linux ha sei campi. I primi cinque campi definiscono l'ora e la data di esecuzione e il sesto campo viene utilizzato per l'esecuzione del comando.