如何正確使用killall、kill、pkill命令
killall命令詳解在Linux系統(tǒng)中,經(jīng)常需要終止進程的運行。有時候,無法通過常規(guī)方法結(jié)束進程,就需要強制終止。其中,killall命令用于殺死指定名稱的進程。相比于使用kill命令結(jié)合ps和g
killall命令詳解
在Linux系統(tǒng)中,經(jīng)常需要終止進程的運行。有時候,無法通過常規(guī)方法結(jié)束進程,就需要強制終止。其中,killall命令用于殺死指定名稱的進程。相比于使用kill命令結(jié)合ps和grep命令來查找并終止進程,killall將這兩個步驟合而為一,極大地方便了操作。下面是該命令的格式、參數(shù)以及示例:
格式
- killall [參數(shù)] [進程名]
命令參數(shù)
- -Z:只殺死擁有scontext的進程
- -e:要求匹配進程名稱
- -I:忽略大小寫
- -g:殺死進程組而不是單個進程
- -i:交互模式,執(zhí)行前詢問用戶
- -l:列出所有已知信號名稱
- -q:不輸出警告信息
- -s:發(fā)送指定信號
- -v:報告信號是否成功發(fā)送
- -w:等待進程終止
- --help:顯示幫助信息
- --version:顯示版本信息
示例
1. 殺死所有同名進程:
- `killall nginx`
- `killall -9 bash`
2. 向進程發(fā)送指定信號:
- `killall -TERM ngixn`
- `killall -KILL nginx`
kill命令詳解
在Linux中,kill命令用于終止指定進程的運行。通常情況下,可以通過Ctrl C鍵來終止前臺進程,但對于后臺進程,就需要使用kill命令了。首先需要使用工具如ps、pidof、pstree、top等獲取進程PID,然后通過kill命令發(fā)送指定信號來結(jié)束進程。默認情況下,采用編號為15的TERM信號,終止不能捕獲該信號的進程;對于可捕獲該信號的進程,則需使用編號為9的kill信號進行強制終止。
命令格式
- kill [參數(shù)] [進程id]
命令參數(shù)
- -l:列出全部信號名稱
- -a:處理當前進程時,不限制命令名和進程號的對應(yīng)關(guān)系
- -p:只打印相關(guān)進程的進程號,不發(fā)送信號
- -s:指定發(fā)送信號
- -u:指定用戶
示例
先使用ps查找進程,再用kill命令終止:
```bash
ps -ef | grep vim
kill 3268
```
徹底殺死進程命令:
```bash
kill -9 3268
```
pkill命令介紹
pkill與killall類似,用于直接終止運行中的進程。如果需要終止單個進程,建議使用kill命令。pkill的應(yīng)用方法如下:
- pkill 正在運行的進程名
示例
終止特定虛擬終端連接用戶的多個進程:
```bash
pkill -kill -t pts/2
```
以上是killall、kill和pkill命令的詳細介紹及用法。在Linux系統(tǒng)中,正確使用這些命令能夠有效管理進程,提高系統(tǒng)的穩(wěn)定性和安全性。