Questi due comandi visualizzano una lista dei processi attualmente in esecuzione sul sistema, secondo i criteri da voi stabiliti.
Digitando questo comando senza alcun argomento, verranno mostrati solo i processi avviati da voi e collegati al terminale che voi state utilizzando:
$ ps PID TTY TIME CMD 18614 pts/3 00:00:00 bash 20173 pts/3 00:00:00 ps
Come d'abitudine per molti programmi di utilità UNIX, ps dispone di un gran numero di opzioni, ve ne segnaliamo alcune tra le più comuni:
Vi sono molte altre opzioni. Fate riferimento alla pagina di manuale ps(1) per ulteriori informazioni.
L'output di questo comando è suddiviso in due diversi campi: quello che vi interesserà di più è il campo PID, che contiene il numero identificativo del processo. Il campo CMD contiene il nome del comando eseguito. Un modo molto comune di lanciare ps è il seguente:
$ ps ax | less
Questo vi dà una lista di tutti i processi attualmente in esecuzione, in maniera tale da permettervi di identificare uno o più processi che stanno causando problemi e quindi di terminarli.
Il comando pstree visualizza i processi sotto forma di struttura ad albero. Uno dei vantaggi è che potete immediatamente vedere qual è il processo padre di un altro processo: quando volete terminare un'intera serie di processi e tutti questi sono padre o figlio l'uno dell'altro, dovete semplicemente terminare il processo padre. Potete utilizzare l'opzione -p, che visualizza il PID di ciascun processo, e l'opzione -u che visualizza il nome dell'utente che ha avviato il processo. Poiché la struttura ad albero è generalmente lunga, può essere utile eseguire pstree in questo modo:
$ pstree -up | less
Questo vi fornisce una visione schematica dell'intero albero dei processi.