小编mit*_*tra的帖子

Bash函数可以杀死进程

我为这个函数创建了一个别名,以便在bash中杀死进程:

在我的.bashrc文件上

  kill_process(){
    # $1 being a parameter for the process name
    kill $(ps ax | grep "$1" | awk '{print $1}')
}

alias kill_process=kill_process
Run Code Online (Sandbox Code Playgroud)

所以,假设我想杀死这个meteor过程:

让我们看看所有的流星过程:

ps aux | grep 'meteor' | awk '{print $2}' 

21565
21602
21575
21546
Run Code Online (Sandbox Code Playgroud)

kill_process使用别名调用该函数

kill_process meteor

bash: kill: (21612) - No such process
Run Code Online (Sandbox Code Playgroud)

因此,该kill_process函数有效地终止了meteor进程,但它的kill命令查找不存在的pid.请注意,pid 21612未列出ps aux | grep. 有什么想法改进kill_process功能以避免这种情况?

bash

5
推荐指数
1
解决办法
1427
查看次数

标签 统计

bash ×1