Rumah  >  Artikel  >  Tutorial sistem  >  Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?

Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?

王林
王林ke hadapan
2024-03-23 14:50:03995semak imbas

Baris arahan Linux mempunyai semua alatan yang anda perlukan untuk menghentikan proses berjalan. Jack Wallen memberitahu anda butirannya.
Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?

Bayangkan ini: anda membuka program (mungkin dari menu desktop atau baris arahan anda), kemudian mula menggunakan program itu, dan anda tidak menjangka program itu terkunci, berhenti berjalan atau ranap secara tidak dijangka. Anda cuba menjalankan program sekali lagi, tetapi ia melaporkan kembali bahawa proses asal tidak ditutup sepenuhnya.

Apa yang perlu anda lakukan? Anda mahu menamatkan proses. Tetapi bagaimana? Percaya atau tidak, penyelesaian terbaik kebanyakannya dalam baris arahan. Syukurlah, Linux mempunyai setiap alat yang diperlukan untuk pengguna mematikan proses yang salah, namun, sebelum anda boleh melaksanakan arahan untuk mematikan proses, anda perlu mengetahui terlebih dahulu apakah proses itu. Bagaimana untuk mengendalikan jenis tugas ini. Sebaik sahaja anda memahami alat ini, ia sebenarnya agak mudah...

Langkah-langkah yang saya gariskan adalah terpakai untuk setiap pengedaran Linux, sama ada desktop atau pelayan. Saya akan menghadkan diri saya kepada baris arahan, jadi sila buka terminal anda dan mula menaip arahan.

Proses lokasi

Langkah pertama dalam membunuh proses yang tidak bertindak balas adalah untuk mencari proses tersebut. Terdapat dua arahan yang saya gunakan untuk mencari proses: arahan atas dan ps. top ialah alat yang diketahui oleh setiap pentadbir sistem Dengan arahan atas, anda boleh mengetahui semua proses yang sedang berjalan. Dalam baris arahan, masukkan arahan atas untuk melihat proses program anda sedang berjalan (Rajah 1)

Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?

Rajah 1: Perintah teratas memberi anda banyak maklumat.

Anda boleh melihat maklumat yang sangat penting daripada senarai yang dipaparkan Sebagai contoh, penyemak imbas Chrome lambat bertindak balas Menurut arahan teratas kami, kami boleh mengenal pasti empat proses penyemak imbas Chrome berjalan, dan pid proses Nombornya ialah 3827, 3919. , 10764 dan 11679 masing-masing. Maklumat ini penting dan boleh digunakan dengan cara yang istimewa untuk menamatkan proses.

Walaupun arahan teratas sangat mudah, ia bukanlah cara yang paling berkesan untuk mendapatkan maklumat yang anda inginkan. Anda tahu proses Chrome yang anda mahu bunuh dan anda tidak mahu melihat maklumat masa nyata dipaparkan oleh arahan teratas. Atas sebab ini, anda boleh menggunakan arahan ps dan kemudian arahan grep untuk menapis output. Perintah ps memaparkan petikan senarai proses semasa, dan kemudian menggunakan arahan grep untuk mengeluarkan corak padanan. Sebab mengapa kami menapis output arahan ps melalui arahan grep adalah mudah: jika anda hanya memasukkan arahan ps, anda akan mendapat gambaran senarai semua proses semasa, dan apa yang kami perlukan ialah menyenaraikan proses penyemak imbas Chrome berkaitan. Jadi arahannya kelihatan seperti ini:

ps aux | grep chrome

Di sini pilihan aux kelihatan seperti ini:

  • a = Tunjukkan proses untuk semua pengguna
  • u = Tunjukkan pengguna dan pemilik proses
  • x = juga menunjukkan proses yang tidak dilampirkan pada terminal

Parameter x ini penting apabila anda mencari maklumat tentang program grafik.

Apabila anda memasukkan arahan di atas, anda akan mendapat lebih banyak maklumat daripada Rajah 2, dan kadangkala ia lebih berkesan daripada arahan atas.

Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?

Rajah 2: Gunakan arahan ps untuk mencari maklumat kandungan yang diperlukan.

Tamat proses

现在我们开始结束进程的任务。我们有两种可以帮我们杀死错误的进程的信息。

  • 进程的名字
  • 进程的 ID (PID)

你用哪一个将会决定终端命令如何使用,通常有两个命令来结束进程:

  • kill - 通过进程 ID 来结束进程
  • killall - 通过进程名字来结束进程

有两个不同的信号能够发送给这两个结束进程的命令。你发送的信号决定着你想要从结束进程命令中得到的结果。举个例子,你可以发送 HUP(挂起)信号给结束进程的命令,命令实际上将会重启这个进程。当你需要立即重启一个进程(比如就守护进程来说),这是一个明智的选择。你通过输入 kill -l 可以得到所有信号的列表,你将会发现大量的信号。

Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?

图 3: 可用的结束进程信号。

最经常使用的结束进程的信号是:

好的是,你能用信号值来代替信号名字。所以你没有必要来记住所有各种各样的信号名字。

所以,让我们现在用 kill 命令来杀死 Chrome 浏览器的进程。这个命令的结构是:

kill SIGNAL PID

这里 SIGNAL 是要发送的信号,PID 是被杀死的进程的 ID。我们已经知道,来自我们的 ps 命令显示我们想要结束的进程 ID 号是 3827、3919、10764 和 11679。所以要发送结束进程信号,我们输入以下命令:

kill -9 3827
kill -9 3919
kill -9 10764
kill -9 11679

一旦我们输入了以上命令,Chrome 浏览器的所有进程将会成功被杀死。

我们有更简单的方法!如果我们已经知道我们想要杀死的那个进程的名字,我们能够利用 killall 命令发送同样的信号,像这样:

killall -9 chrome

附带说明的是,上边这个命令可能不能捕捉到所有正在运行的 Chrome 进程。如果,运行了上边这个命令之后,你输入 ps aux | grep chrome 命令过滤一下,看到剩下正在运行的 Chrome 进程有那些,最好的办法还是回到 kIll 命令通过进程 ID 来发送信号值 9 来结束这个进程。

结束进程很容易

正如你看到的,杀死错误的进程并没有你原本想的那样有挑战性。当我让一个顽固的进程结束的时候,我趋向于用 killall命令来作为有效的方法来终止,然而,当我让一个真正的活跃的进程结束的时候,kill命令是一个好的方法。


Atas ialah kandungan terperinci Bagaimana untuk MEMBUNUH proses dari baris arahan di Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:linuxprobe.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam