Ogni comando che viene eseguito sulla macchina viene detto processo e ad esso è assegnato un numero d'ordine unico.
Per vedere tutti i processi, dare il comando ps. Esempio:
$ psUna successione di uno o più processi lanciati con un unico comando (ad esempio, una pipeline) viene detta job. In particolare, se il job è eseguito in background ad esso è assegnato un numero d'ordine, che è unico per una sessione di shell (p. es. un terminale). Il numero del job viene scritto tra parentesi quadre sul terminale al momento che esso è lanciato. Es:
PID TTY TIME CMD
17686 pts/3 00:00:00 tcsh
18829 pts/3 00:00:00 ps
$ emacs &[1] 10301Il secondo numero che viene scritto è il numero di processo dell'ultimo processo del job.
Per vedere su terminale la lista di tutti i job, dare il comando jobs
$ find /usr -mtime -7 | sort & [2] 10334 $ jobs [1]- Running emacs [2]+ Running find /usr -mtime -7 | sort &
Il comando find /usr -mtime -7 cerca in /usr e nelle sue sottodirectory tutti i file modificati negli ultimi 7 giorni; l'output viene poi filtrato da sort, cioè i file sono ordinati in ordine alfabetico. L'esplorazione del disco in genere richiede un po' di tempo, perciò è utile mandare questa pipeline in background.
Notare che ad ogni comando del job 2 (find e sort) viene assegnato un distinto numero di processo:
$ ps 10284 pts/0 00:00:00 bash 10301 pts/0 00:00:00 emacs 10333 pts/0 00:00:00 find 10334 pts/0 00:00:00 sort 10335 pts/0 00:00:00 ps