GNU/Linux >> Belajar Linux >  >> Linux

Temukan (dan bunuh) proses lama

Solusi 1:

Anda dapat melakukan ini dengan kombinasi ps , awk dan kill:

ps -eo pid,etime,comm

Memberi Anda output tiga kolom, dengan PID proses, waktu yang berlalu sejak proses dimulai, dan nama perintah, tanpa argumen. Waktu yang berlalu terlihat seperti ini:

mm:ss
hh:mm:ss
d-hh:mm:ss

Karena Anda menginginkan proses yang telah berjalan lebih dari seminggu, Anda akan mencari garis yang cocok dengan pola ketiga tersebut. Anda dapat menggunakan awk untuk memfilter proses dengan menjalankan waktu dan dengan nama perintah, seperti ini:

ps -eo pid,etime,comm | awk '$2~/^7-/ && $3~/mycommand/ { print $1 }'

yang akan mencetak pid dari semua perintah yang cocok dengan 'mycommand' yang telah berjalan lebih dari 7 hari. Masukkan daftar itu ke dalam kill, dan selesai:

ps -eo pid,etime,comm | awk '$2~/^7-/ && $3~/mycommand/ { print $1 }' | kill -9

Solusi 2:

killall --quiet --older-than 1w process_name


Linux
  1. Cara Menemukan dan Membunuh Proses Zombie di Linux

  2. Apa Proses Zombie Dan Bagaimana Menemukan &Membunuh Proses Zombie?

  3. Cara Menemukan Proses Berjalan Teratas berdasarkan Memori dan Penggunaan CPU

  1. Temukan Pola Dan Pindahkan?

  2. Temukan 10 Proses Berjalan Teratas berdasarkan Memori dan Penggunaan CPU

  3. Bagaimana cara menemukan dan mematikan proses di Ubuntu

  1. Linux:Temukan dan Bunuh Proses Zombie

  2. Temukan dan salin file

  3. Cara terbaik untuk mematikan proses status Zombie dan D di linux