突然给个需求让我写个脚本把一个程序的子进程和父进程杀掉,然后我就顺手学习了学习,废话不多説,上命令吧。
先解释下ps -ef |grep的含义
ps -ef用于查看全格式的全部进程,其中“ps”是在Linux中是查看进程的命令,“-e ”参数代表显示所有进程,“-f”参数代表全格式。
ps命令将某个进程显示出来;
grep命令是查找;
中间的|是管道命令 是指ps命令与grep同时执行;
PS是LINUX下最常用的也是非常强大的进程查看命令;
grep命令是查找,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来;
grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户;
杀掉父进程:
kill -9 `ps -ef |grep test |awk 'NR==1{print $3}'`
其中:NR==1 定位在file的第一行
或者
kill -9 `ps -ef | grep test | grep -v "grep" | awk '{print $3}'`
杀掉子进程:
kill -9 `ps -ef |grep test |awk 'NR==1{print $2}'`
或者
kill -9 `ps -ef | grep test | grep -v "grep" | awk '{print $2}'`
如果还有其他方法,欢迎大家补充!谢谢!