Loading... ## 1. 问题 由于公司的spring cloud项目内部测试的服务器使用的是Jenkins部署环境没有使用Docker 导致每次手动去查询进程的pid然后挨个关闭很麻烦 这时候需要一个脚本来实现批量关闭进程 ## 2. 解决方法 ``` pkill -9 进程名 ``` ``` ps -ef | grep ruoyi | grep -v grep | cut -c 10-16 | xargs kill -9 ``` 管道符"|"用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。 | 字段 | 作用 | | :-------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ps -ef | Linux里查看所有进程的命令<br />这时检索出的进程将作为下一条命令"grep LOCAL=NO"的输入 | | grep ruoyi | 输出结果是 所有含有关键字"ruoyi"的进程 | | grep -v grep | 在列出的进程中去除含有关键字"grep"的进程 | | cut -c 10-16 | 截取输入行的第10个字符到第16个字符,而这正好是进程号PID<br /><span style='color:red'>我是用的是Centso8截取的进程PID是第10位到第16位<br />网上搜到的相关资料都是9-15导致PID截取不全无法生效<br /></span> | | xargs kill -9 | xargs用来把前面命令的输出结果PID的多个进程结果<br />一个个输出为参数作为"kill -9"命令的参数,并执行该命令。<br />"kill -9"会强行杀掉指定进程,尤其是多个java进程也能如此。 |  执行指令之后 ``` ps -ef | grep ruoyi | grep -v grep | cut -c 10-16 | xargs kill -9 ```  Last modification:May 28, 2021 © Allow specification reprint Support Appreciate the author AliPayWeChat Like 0 感谢大佬投喂 啾咪~