Linux è amato da sviluppatori e appassionati allo stesso modo. Puoi fare molte cose che di solito non puoi fare su sistemi operativi come Windows e OSX.
Linux è il miglior sistema operativo per programmatori, sviluppatori e chiunque voglia comprendere correttamente i sistemi operativi. Ora Linux ha molte funzioni e capacità. Oggi imparerai a conoscere i comandi pgrep e pkill di Linux e come puoi usarli per rendere la tua esperienza Linux utile. Come suggerisce il nome, il comando pgrep viene utilizzato per cercare il processo in base al nome e il comando pkill terminerà o ucciderà il processo in base al nome.
Prerequisiti
- Un sistema operativo Linux (gli screenshot provengono da una macchina centos/rhel)
comando pgrep
Sintassi:# pgrep [opzioni] modello
La maggior parte degli utenti Linux riconosce il comando grep che viene utilizzato per trovare parole o caratteri specifici. pgrep funziona quasi allo stesso modo. Il comando pgrep viene utilizzato durante la ricerca di processi (in base al nome) in esecuzione sul sistema al momento dell'utilizzo.
Immergiamoci negli esempi di comandi pgrep,
Esempio:1) Elenca l'ID processo di proprietà di un utente specifico (-u)
Quando viene utilizzato, pgrep elenca gli ID di processo che corrispondono ai criteri specificati. Ad esempio, quando digiti;
[[email protected] ~]# pgrep -u apache httpd 1274 1275 1278 1282 1283 1284 1286 1291 [[email protected] ~]#
Il sistema elenca tutti i processi chiamati httpd che sono di proprietà dell'utente apache.
Esempio:2) Elenca tutti i processi di proprietà di più utenti
Supponiamo di voler elencare tutti i processi di proprietà dell'utente root e apache, eseguire il comando seguente,
[[email protected] ~]# pgrep -u apache,root
Qui gli utenti sono separati da virgole (,)
Uscita:
Esempio:3) Conteggio numero di processo di corrispondenza (-c)
Supponiamo di voler contare il processo numerico di proprietà di apache e dell'utente root, eseguire il comando sottostante
[[email protected] ~]# pgrep -u apache -c 8 [[email protected] ~]# pgrep -u root -c 95 [[email protected] ~]#
Nel comando precedente, l'opzione '-c' viene utilizzata per contare il numero di processi associati a un utente.
Esempio:4) Elenca gli ID processo insieme al nome del processo (-l e -a)
Supponiamo di voler elencare gli ID processo e il nome processo associati a un utente, quindi utilizzare -l o -a opzione nel comando pgrep. L'opzione -l elencherà solo il nome del processo mentre -a elencherà il percorso completo del nome del processo,
[[email protected] ~]# pgrep -u apache -l 4353 httpd 4354 httpd 4355 httpd 4356 httpd 4357 httpd 4358 httpd 4359 httpd 4360 httpd [[email protected] ~]# [[email protected] ~]# pgrep -u apache -a 4353 /usr/sbin/httpd -DFOREGROUND 4354 /usr/sbin/httpd -DFOREGROUND 4355 /usr/sbin/httpd -DFOREGROUND 4356 /usr/sbin/httpd -DFOREGROUND 4357 /usr/sbin/httpd -DFOREGROUND 4358 /usr/sbin/httpd -DFOREGROUND 4359 /usr/sbin/httpd -DFOREGROUND 4360 /usr/sbin/httpd -DFOREGROUND [[email protected] ~]#
Esempio 5) Elenca gli ID di processo associati a un utente utilizzando il delimitatore personalizzato (-d)
Usa '-d ' opzione in pgrep per elencare gli ID di processo dell'utente utilizzando un delimitatore personalizzato, supponiamo di elencare gli ID di processo associati all'utente apache separati da virgola (,) o spazio.
[[email protected] ~]# pgrep -u apache -d, 4353,4354,4355,4356,4357,4358,4359,4360 [[email protected] ~]# pgrep -u apache -d" " 4353 4354 4355 4356 4357 4358 4359 4360 [[email protected] ~]#
Esempio:6) Elenca il nome del processo più recente e il relativo id (-n)
Supponiamo di voler elencare il nome del processo più recente e i suoi ID di proprietà dell'utente root, eseguire sotto il comando pgrep
Sintassi:
# pgrep -u
[[email protected] ~]# pgrep -u root -n -l 11255 kworker/0:2 [[email protected] ~]#
Esempio:7) Elenca il nome del processo più vecchio e il suo ID (-o)
Supponiamo di voler elencare il nome del processo più vecchio e i suoi ID di proprietà dell'utente root, esegui sotto il comando pgrep
Sintassi:
# pgrep -u
[[email protected] ~]# pgrep -u root -o -l 1 systemd [[email protected] ~]#
Esempio:8) Processo di ricerca con il suo nome
Supponiamo di voler elencare tutti gli ID di processo associati al processo postgres
[[email protected] ~]# pgrep postgres -l 1233 postgres 1234 postgres 4465 postgres 4469 postgres [[email protected] ~]#
Ed è così che usiamo pgrep. Passiamo al comando pkill
comando pkill
Il comando pkill viene utilizzato per terminare i processi tramite la riga di comando. A differenza del comando kill, pkill non ha bisogno che tu metta l'ID del processo che stai cercando di terminare.
Allora come usi pkill? Semplice, digita pkill con il nome del processo che vuoi eliminare come input.
Sintassi:
# pkill [opzioni]
Esempio:9) Termina il processo in base al suo nome (pkill {process_name})
Ad esempio, se desideri terminare il processo postgres, digita semplicemente;
[[email protected] ~]# pkill postgres [[email protected] ~]#
Se il processo postgres è in esecuzione, verrà terminato immediatamente.
Esempio:10) Termina il processo inviando un segnale diverso (–segnale)
Per impostazione predefinita, il comando pkill usa "SIGTERM segnale ” durante la sua esecuzione. Possiamo modificare questo segnale predefinito utilizzando "–segnale ” opzione nel comando pkill, ad esempio,
[[email protected] ~]# pkill --signal SIGKILL postgres [[email protected] ~]#
Esempio:11) kill process basato sul comando completo (-f)
Possiamo istruire il comando pkill per uccidere un processo basato sul comando completo invece del nome del processo usando -f opzione. Cosa significa questo? Supponiamo che due comandi ping siano in esecuzione sul tuo sistema.
eseguire il ping su google.com
ping linuxtechi.com
Ora, se il requisito è solo quello di terminare il comando "ping google.com" usando pkill. Puoi usare pkill nel modo seguente:
[[email protected] ~]# pkill -f "ping google.com" [[email protected] ~]#
Si noti che viene utilizzata l'opzione -f. Se l'avessi usato;
[[email protected] ~]# pkill ping
quindi entrambi i comandi verranno terminati.
Pensieri finali
In questa guida hai imparato tutto sui comandi pgrep e pkill usando esempi pratici.
In sintesi, pgrep è un comando utilizzato durante la ricerca di processi in esecuzione sul sistema al momento dell'uso. La sua sintassi è pgrep [opzioni] pattern.
D'altra parte, pkill viene utilizzato per terminare i processi tramite la riga di comando. La sua sintassi è pkill [opzioni]
Puoi utilizzare i due comandi per sfruttare ulteriormente le capacità e la flessibilità di Linux. Ora che hai tutte le informazioni, cosa ne pensi? Per favore lascia un commento e saremo felici di rispondere.