📅  最后修改于: 2023-12-03 15:26:33.431000             🧑  作者: Mango
在Linux系统下,通过进程的名称或者关键词进行搜索定位,并对其进行杀死操作,是非常常见的操作。其中,使用grep命令可以方便地搜索出所有与指定关键词或进程名称匹配的进程pid,使用kill命令则可以将这些进程全部杀死。
以下是一个shell脚本,用来实现上述功能:
#!/bin/bash
echo "请输入要搜索的进程关键词:"
read keyword
# 获取所有匹配进程的pid
pids=$(ps aux | grep "$keyword" | grep -v grep | awk '{print $2}')
if [ -n "$pids" ]; then
# 杀死所有匹配进程
echo -n "确认要杀死以上进程吗?(y/n)"
read confirm
if [ "$confirm" == "y" ]; then
kill $pids
echo "成功杀死进程:$pids"
else
echo "取消杀死进程。"
fi
else
echo "没有找到匹配的进程。"
fi
该脚本会首先提示用户输入要搜索的进程关键词,然后使用ps aux命令获取所有匹配的进程的pid,并使用kill命令杀死这些进程。如果没有匹配的进程,则输出相应的信息,同时如果用户不确认要杀死这些进程,则也不会对其进行操作。
kill_process.sh
文件;$ chmod +x kill_process.sh
$ ./kill_process.sh