Linux è una scelta eccellente per chi cerca un sistema operativo multitasking e multiutente. Più processi possono essere eseguiti simultaneamente e indipendentemente l’uno dall’altro ed è eccezionalmente stabile. Ogni volta che eseguiamo un programma, verrà creato un nuovo processo dell’istanza di quel programma ed eseguirà le attività date senza disturbare gli altri programmi in esecuzione.

Linux ha l’utility ps (Process Status) per visualizzare le informazioni relative ai processi in esecuzione sul sistema. Usando il comando ps, puoi ottenere l’elenco dei processi, i loro PID e alcuni dettagli diversi usando altre opzioni.

Comando PS di Linux

In questo articolo, ti mostreremo alcuni utili comandi ps con esempi. Ps fornisce numerose opzioni per scopi diversi.

Sintassi:

ps <options>

Dove è il parametro per vari scopi che discuteremo in dettaglio in questo articolo.

1. Elenca i processi shell correnti

È possibile visualizzare l’elenco dei processi per la shell corrente utilizzando il comando ps e, se nessun altro processo è in esecuzione, restituirà il processo che esegue il comando ps.

$ ps

Esempio:

mostra i processi della shell
mostra i processi della shell

Il comando visualizza quattro colonne con informazioni:

  • PID: è un ID processo univoco
  • TTY: tipo di utente terminale attualmente connesso
  • TIME: tempo di esecuzione della CPU in minuti e secondi
  • CMD: nome del comando che ha avviato questo processo

2. Elenca tutti i processi

È possibile visualizzare tutti i processi in esecuzione sul sistema utilizzando il file -e operatore.

$ ps -e

Esempio:

mostra tutti i processi usando il comando ps
mostra tutti i processi usando il comando ps

È possibile ottenere ulteriori dettagli su tutti i processi utilizzando le opzioni -f e -F.

$ ps -f

Esempio: -f opzione fornisce un elenco in formato completo.

mostra tutti i processi con il formato completo
mostra tutti i processi con il formato completo

$ ps -F

Esempio: l’opzione -F fornisce un elenco extra completo del formato

mostra tutti i processi con formato completo extra
mostra tutti i processi con formato completo aggiuntivo

3. Elenca tutti i processi per un utente

Per visualizzare tutti i processi di un utente sul sistema, utilizzare il u operatore.

Sintassi:

$ ps -u <UID>

Qui è l’ID utente o il nome utente per il quale stiamo elencando i processi.

Esempio:

ps -u tuts

mostra tutti i processi per utente
mostra tutti i processi per utente

4. Elenca tutti i processi per un gruppo

Se vuoi visualizzare tutti i processi di un gruppo sul sistema, l’operatore g torna utile. Ecco la sintassi generale.

Sintassi:

$ ps -g <GID>

Qui è l’ID del gruppo o il nome del gruppo per il quale stiamo elencando i processi.

Esempio:

mostra tutti i processi per gruppo
mostra tutti i processi per gruppo

5. Elenca i processi in base al nome del comando

Nel caso in cui avessi bisogno di tutti i processi di un comando sul sistema, l’utilizzo dell’operatore C non ha prezzo. Vediamo la sua sintassi e l’utilizzo di esempio.

Sintassi:

$ ps -C <program>

Qui è il nome del comando.

Esempio:

mostra tutti i processi di comando
mostra tutti i processi di comando

6. Mostra l’albero dei processi

È possibile recuperare il processo in modo gerarchico o ad albero utilizzando il comando seguente.

$ ps -e -H

Esempio:

mostra i processi nella struttura ad albero o nella gerarchia

In alternativa, è anche possibile visualizzare i processi in formato ASCII utilizzando l’opzione –forest.

$ ps -e --forest

Esempio:

mostra i processi in formato ASCII
mostra i processi in formato ASCII

7. Trova il PID di processo

A volte, potrebbe essere necessario trovare l’ID di un processo in esecuzione. Per cercarlo, puoi usare il comando grep come mostrato di seguito:

ps -ef | grep thunderbird

Esempio:

Processo di ricerca pid
Processo di ricerca PID

Qui 2846 è l’ID di processo per il programma thunderbird. Successivamente è possibile utilizzare questo PID per terminare questo processo utilizzando il comando kill.

kill <process id>

8. Visualizza i processi di utilizzo della memoria alta

Il seguente comando è molto utile per gli amministratori di sistema durante la risoluzione dei problemi del sistema. È possibile visualizzare l’elenco dei processi in modo ordinato per scoprire i processi di utilizzo della memoria più elevato.

ps -eo pid,cmd,%mem,%cpu --sort=-%mem

Esempio:

processo di visualizzazione utilizzando memoria alta
processo di visualizzazione utilizzando memoria alta

Conclusione

Questi erano i vari modi per usare il comando ps in Linux. Puoi vedere quanto utili ed essenziali possano essere questi comandi per una corretta amministrazione e gestione del sistema. Per saperne di più sull’utilizzo di questi comandi, puoi usare il Aiuto opzione nel terminale mentre nel comando particolare.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *