Job in background e controllo dei job
Esegua i comandi senza occupare il terminale. Impari a usare i job in background, il controllo dei job con jobs/fg/bg e nohup per mantenere attivi i processi dopo il logout.
Job in background e controllo dei job è una lezione Linux Command Line & Bash Scripting Mastery gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Command Line & Bash Scripting Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.
Perché usare i processi in background
Alcuni comandi richiedono molto tempo. Invece di bloccare il terminale, può eseguirli in background e continuare a lavorare nella stessa shell.
Avvio in background
Aggiunga & a un comando per avviarlo in background. La shell visualizza un numero di job e un PID, quindi restituisce immediatamente il prompt.
sleep 300 &
[1] 4821Elencare i job
Il comando jobs elenca i job in background e sospesi della shell corrente, ciascuno con un numero di job tra parentesi quadre.
jobs
[1]+ Running sleep 300 &Sospendere un job
Premere Ctrl+Z per sospendere il comando in primo piano. Il comando si arresta (non termina) e restituisce il prompt.
^Z
[1]+ Stopped nano notes.txtRiprendere in background
bg riprende in background l'ultimo job sospeso, che continua a essere eseguito mentre lavora.
bg
[1]+ nano notes.txt &Portare in primo piano
fg riporta in primo piano un job in background o sospeso. Per selezionarne uno specifico, utilizzare fg %n.
fg %1 # bring job 1 to the foregroundFare riferimento ai job
Utilizzare %n per fare riferimento a un job tramite il numero, in comandi come fg, bg e kill.
kill %1 # terminate job number 1Job e PID a confronto
I numeri di job sono comodità locali alla shell; i PID sono validi a livello di sistema. Utilizzi i numeri di job nella shell, ma i PID con strumenti di sistema come kill da un altro terminale.
Sopravvivere al logout con nohup
Normalmente i job in background terminano quando esegue il logout. nohup scollega un comando dal terminale, consentendogli di continuare a funzionare dopo l'uscita.
nohup ./long_task.sh > out.log 2>&1 &Rimuovere un job dalla shell
disown rimuove un job in esecuzione dalla tabella dei job della shell, così la chiusura della shell non gli invierà un segnale di hangup.
./task &
disown %1Strumenti come screen e tmux
Per sessioni remote o di lunga durata, i multiplexer di terminale come tmux o screen mantengono attive intere sessioni, che possono essere ricollegate dopo una disconnessione.
Verifica rapida
Verifichi la Sua comprensione.
Riepilogo
Ha imparato il controllo dei job: avviarli con &, elencarli con jobs, sospenderli con Ctrl+Z, spostarli con bg/fg e %n e mantenerli attivi dopo il logout con nohup, disown o tmux/screen.
Domande Frequenti
La lezione «Job in background e controllo dei job» è gratuita?
Sì — il testo completo di «Job in background e controllo dei job» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Command Line & Bash Scripting Mastery, passa a CoddyKit PRO. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.
Cosa imparerò in «Job in background e controllo dei job»?
Esegua i comandi senza occupare il terminale. Impari a usare i job in background, il controllo dei job con jobs/fg/bg e nohup per mantenere attivi i processi dopo il logout. Eserciti Linux Command Line & Bash Scripting Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Linux Command Line & Bash Scripting Mastery?
Non è richiesta alcuna esperienza precedente. Linux Command Line & Bash Scripting Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Job in background e controllo dei job»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Linux Command Line & Bash Scripting Mastery?
Sì. Ogni lezione Linux Command Line & Bash Scripting Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Gestione dei processi (ps, top, kill)
- Redirezione dell'input/output (>, >>, <)
- Pipeline di comandi (|)
- Job in background e controllo dei job