In questo breve tutorial, voglio esaminare i jobs
comando e alcuni dei modi in cui possiamo manipolare i lavori in esecuzione sui nostri sistemi. In breve, il controllo dei lavori ti consente di sospendere e riprendere i processi avviati nella tua shell Linux.
Lavori
I jobs
il comando elencherà tutti i lavori sul sistema; attivo, interrotto o meno. Prima di esplorare il comando e l'output, creerò un lavoro sul mio sistema.
Userò il sleep
lavoro in quanto non cambierà il mio sistema in alcun modo significativo.
[tcarrigan@rhel ~]$ sleep 500
^Z
[1]+ Stopped sleep 500
Innanzitutto, ho emesso il sleep
comando, quindi ho ricevuto il Numero lavoro [1]. Ho quindi interrotto immediatamente il lavoro utilizzando Ctl+Z . Successivamente, eseguo i jobs
comando per visualizzare il lavoro appena creato:
[tcarrigan@rhel ~]$ jobs
[1]+ Stopped sleep 500
Puoi vedere che ho un singolo lavoro interrotto identificato dal numero di lavoro [1] .
Altre opzioni da conoscere per questo comando includono:
- -l - elenca i PID oltre alle informazioni predefinite
- -n - elenca solo i processi che sono cambiati dall'ultima notifica
- -p - elenca solo i PID
- -r - mostra solo i lavori in esecuzione
- -s - mostra solo i lavori interrotti
Sfondo
Successivamente, riprenderò il sleep
lavoro in background. Per fare ciò, utilizzo il bg
comando. Ora, il bg
comando ha una sintassi piuttosto semplice, come si vede qui:
bg [JOB_SPEC]
Dove JOB_SPEC può essere uno dei seguenti:
- %n - dove n è il numero del lavoro
- %abc - si riferisce a un lavoro avviato da un comando che inizia con abc
- %?abc - si riferisce a un lavoro avviato da un comando contenente abc
- %- - specifica il lavoro precedente
NOTA :bg
e fg
operare sul lavoro corrente se non viene fornito alcun JOB_SPEC.
Posso spostare questo lavoro in background utilizzando il numero di lavoro [1] .
[tcarrigan@rhel ~]$ bg %1
[1]+ sleep 500 &
Ora puoi vedere che ho un unico lavoro in esecuzione in background.
[tcarrigan@rhel ~]$ jobs
[1]+ Running sleep 500 &
In primo piano
Ora, diamo un'occhiata a come spostare un lavoro in background in primo piano. Per fare ciò, utilizzo il fg
comando. La sintassi del comando è la stessa per il comando in primo piano come per il comando in background.
fg [JOB_SPEC]
Fare riferimento ai punti elenco sopra per i dettagli su JOB_SPEC.
Ho iniziato un nuovo sleep
sullo sfondo:
[tcarrigan@rhel ~]$ sleep 500 &
[2] 5599
Ora lo sposterò in primo piano usando il seguente comando:
[tcarrigan@rhel ~]$ fg %2
sleep 500
Il fg
il comando ora ha riportato il mio sistema in uno stato di sospensione.
La fine
Anche se mi rendo conto che i lavori presentati qui erano banali, questi concetti possono essere applicati a qualcosa di più del semplice sleep
comando. Se ti imbatti in una situazione che lo richiede, ora hai le conoscenze per spostare i lavori in esecuzione o interrotti dal primo piano allo sfondo e viceversa.
[ Corso online gratuito:panoramica tecnica di Red Hat Enterprise Linux. ]