Artikel ini membahas dasar-dasar perintah pkill
di Linux.
pkill
adalah utilitas baris perintah yang mengirimkan sinyal ke proses program yang sedang berjalan berdasarkan kriteria yang diberikan. Proses dapat ditentukan dengan nama lengkap atau sebagiannya, pengguna yang menjalankan proses, atau atribut lainnya.
Perintah pkill
adalah bagian dari paket procps
(atau procps-ng
), yang sudah diinstal sebelumnya di hampir semua distribusi Linux. pkill adalah perintah yang berhubungan atau berkesinambungan dengan pgrep
yang hanya mencetak daftar proses yang cocok.
Cara Menggunakan Perintah pkill
Sintaks untuk perintah pkill adalah sebagai berikut:
pkill [OPTIONS] <PATTERN>
Pencocokan <PATTERN>
ditentukan menggunakan extended regular expressions.
Ketika dipanggil tanpa opsi apa pun, pkill mengirimkan sinyal 15 (TERM) ke PID semua program yang berjalan yang cocok dengan nama yang diberikan. Misalnya, untuk menghentikan semua proses firefox, Anda akan menjalankan:
pkill -9 firefox
Perintah mengembalikan output 0
ketika setidaknya satu proses berjalan cocok dengan nama yang diminta. Kalau tidak, kode exit adalah 1
. Ini bisa berguna saat digunakan dalam skrip shell.
Untuk mengirim sinyal berbeda ke proses yang cocok, aktifkan perintah pkill
dengan opsi --signal
, diikuti oleh numeric
atau nama sinyal simbolik. Cara lain untuk mengirim sinyal adalah dengan menjalankan pkill
diikuti dengan nama atau nomor sinyal yang diawali dengan tanda hubung (-
).
Gunakan perintah kill -l
untuk mendaftar semua sinyal yang tersedia.
Sinyal yang paling umum digunakan adalah:
1
(-HUP): untuk restart suatu proses.9
(-KILL): untuk mematikan suatu proses.15
(-TERM): untuk menghentikan proses dengan cara berbeda.
Signals dapat ditentukan dalam tiga cara berbeda:
- menggunakan nomor (mis., -1)
- dengan awalan “SIG” (mis., -SIGHUP)
- tanpa awalan “SIG” (mis., -HUP).
Misalnya, untuk reload proses Nginx secara paksa, maka perintah yang akan Anda jalankan:
pkill -HUP nginx
pkill
menggunakanregular expressions untuk mencocokkan nama proses. Itu selalu merupakan ide yang baik untuk menggunakan perintah pgrep
untuk mencetak proses yang cocok sebelum mengirim sinyal kepada mereka. Misalnya, untuk membuat list semua proses yang terdapat kata “ssh
” dalam namanya:
1039 sshd 2257 ssh-agent 6850 ssh 31279 ssh-agent
Jika Anda ingin mengirim sinyal hanya ke proses yang namanya persis seperti pola pencarian, Anda akan menggunakan:
pkill '^ssh$'
Karakter tanda caret (^
) akan melihat pencocokan di awal string, dan dolar $
di akhir.
Secara default, pkill
hanya cocok dengan nama proses. Ketika opsi -f
digunakan, perintah akan mencari kecocokan dengan daftar argumen penuh. Jika perintah berisi spasi, kutip seluruh perintah:
pkill -9 -f "ping 8.8.8.8"
Gunakan opsi -u
untuk memberi tahu pkill
untuk menampilkan proses yang dijalankan oleh pengguna tertentu:
pkill -u toni
Untuk menentukan beberapa pengguna, pisahkan nama mereka dengan koma:
pkill -u budi,toni
Anda juga dapat menggabungkan opsi dan pola pencarian. Misalnya untuk mencetak semua proses dan nama mereka yang berjalan di bawah user “budi” dan berisi “gnome” dalam nama mereka, Anda akan mengetik:
pkill -9 -u budi gnome
Untuk hanya menampilkan proses yang dimulai paling awal (paling baru di jalankan) atau paling akhir (terkini), gunakan opsi -n
(merupakan newest atau paling awal di jalankan) atau -o
(untuk oldest atau terbaru di jalankan).
Misalnya, untuk kill aplikasi screen yang paling baru dibuat:
pkill -9 -n screen
Kesimpulan
Perintah pkill
digunakan untuk mengirim sinyal ke program yang sedang berjalan berdasarkan kriteria yang berbeda.
Untuk informasi lebih lanjut tentang perintah pkill, kunjungi halaman manual pkill atau ketik man pkill
di terminal Anda.