![Come utilizzare le reazioni ai messaggi su WhatsApp](/f/14c98dfb80608621334b980f4fd480e7.jpg?width=100&height=100)
Il mondo di Linux è pieno di così tanto cose divertenti e interessanti, più entriamo, più troviamo tipi di cose.
Nei nostri sforzi per portare quei piccoli hack e suggerimenti per te che ti rendono diverso dagli altri, qui abbiamo escogitato alcuni metodi alternativi per programmare un lavoro senza utilizzare il utilità cron su Linux.
La pianificazione di un lavoro/comando in Linux è l'acronimo di cron. Ogni volta che dobbiamo programmare un lavoro, chiamiamo comando cron, ma sai che possiamo programmare un lavoro in un secondo momento senza mais? Puoi farlo utilizzando i seguenti approcci comuni.
Sommario
Esegui un comando (diciamo data) ogni 5 sec e scrivi l'output in un file (Dire data.txt). Per realizzare questo scenario, dobbiamo eseguire lo script di una riga sottostante direttamente sul prompt dei comandi.
$ mentre è vero; fai data >> data.txt; dormire 5; Fatto &
Anatomia della sceneggiatura di una riga sopra:
>>
e non >
.>>
assicura che il file (data.txt) non viene sovrascritto ogni volta che lo script viene eseguito. Aggiunge solo le modifiche. Mentre >
sovrascrivere il file ancora e ancora.&
– Metti l'intero processo in loop sullo sfondo.Allo stesso modo, possiamo eseguire qualsiasi script allo stesso modo. Ecco il comando per chiamare uno script dopo un certo intervallo (diciamo 100 sec) e il nome dello script è nome_script.sh
.
Vale anche la pena ricordare che lo script sopra dovrebbe essere eseguito nella directory in cui si trova lo script da chiamare, altrimenti è necessario fornire un percorso completo (/home/$USER/…/script_name.sh
).
La sintassi per chiamare lo script all'intervallo sopra descritto è:
$ mentre è vero; fai /bin/sh nome_script.sh; dormi 100; Fatto &
Nota: Il one-liner di cui sopra non è un sostituto per Crono, Perché Crono L'utilità supporta un sacco di opzioni, rispetto, ed è molto flessibile e personalizzabile.
Tuttavia, se vogliamo eseguire determinati casi di test o benchmark I/O, il comando singolo di cui sopra servirà allo scopo.
Nella maggior parte moderne distribuzioni Linux, Systemd è l'impostazione predefinita dentro sistema e viene fornito con una funzionalità timer che ti consente di pianificare le tue attività.
Innanzitutto, creane uno nuovo systemd file unità timer con a .Timer
estensione come mostrato.
$ sudo nano /etc/systemd/system/myjob.timer.
Aggiungi il seguente contenuto al file ilmiolavoro.timer
file:
[Unità] Description=Il mio lavoro Timer [Timer]SuCalendar=*-*-* 00:00:00. # Sostituisci il valore OnCalendar con la pianificazione desiderata [Installa] WantedBy=timer.target.
IL SuCalendar campo in a systemd unità timer consente di specificare la pianificazione per il lavoro utilizzando un formato specifico.
*:MM
(per esempio., *:15
ogni 15 minuti) o un intervallo specifico utilizzando MMMM (per esempio., 10-30 per ogni minuto da 10 a 30).Ecco alcuni esempi per illustrare il formato:
## Corri tutti i giorni alle 3:00 ## SuCalendar=*-*-* 03:00:00 ## Esegui ogni lunedì e venerdì alle 10:00 ## OnCalendar=Lun, Ven *-*-* 10:00:00 ## Esegui ogni 30 minuti: ## SuCalendar=*-*-* *:0/30:00
Quindi, crea un file dell'unità di servizio corrispondente con a .servizio
estensione nella stessa directory:
$ sudo nano /etc/systemd/system/myjob.service.
Aggiungi il seguente contenuto al file myjob.servizio
file:
[Unità] Description=Il mio lavoro [Servizio] ExecStart=/path/to/your/job.sh. # Sostituisci "/path/to/your/job.sh" con il comando o lo script effettivo da eseguire [Installa] WantedBy=multiutente.target.
Abilita e avvia il timer:
$ sudo systemctl enable myjob.timer. $ sudo systemctl start myjob.timer.
Questo pianificherà l'esecuzione del lavoro in base al timer specificato.
Anacron è un job scheduler basato sul tempo che consente di programmare periodicamente i job su sistemi che non sono sempre accesi. È progettato per sistemi che potrebbero non avere accesso regolare a cron. Se anacron è installato sul tuo sistema, puoi usarlo per programmare il tuo lavoro.
Se non è installato, puoi installarlo utilizzando il tuo gestore di pacchetti.
$ sudo apt install anacron [On Debian, Ubuntu e Menta] $ sudo yum install anacron [OnRHEL/CentOS/Fedora E Rocky/AlmaLinux] $ sudo emerge -a sys-apps/anacron [OnGentooLinux] $ sudo apk add anacron [OnLinux alpino] $ sudo pacman -S anacron [OnArcoLinux] $ sudo zypper install anacron [OnOpenSUSE]
Crea un nuovo file di configurazione (il mio lavoro.sh) per il tuo lavoro in /etc/anacrontab.d/ directory.
$ sudo nano /etc/anacrontab.d/myjob.sh.
Nel file di configurazione, specifica i dettagli del tuo lavoro.
# Eseguire myjob.sh ogni giorno con un ritardo di 5 minuti. 1 5 il miolavoro /percorso/per/ilmiolavoro.sh
I campi nel file di configurazione hanno i seguenti significati:
Ora, Anacron eseguirà automaticamente il tuo lavoro in base alla pianificazione specificata.
Potrebbe piacerti anche:
Per ora è tutto, se conosci tali hack o trucchi di Linux puoi condividerli con noi tramite la nostra sezione dei commenti e non dimenticare di condividere questo articolo con i tuoi amici.