跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

怎么在Linux利用Ps-Aux配合Grep查找特定运行进程

ps aux | grep 关键词可查找进程,需用grep -v grep或[k]eyword避开grep自身;PID在第二列,可用awk提取,再配合kill终止进程。 用
ps aux
配合
grep
查找特定进程,核心是先列出全部进程,再按关键词筛选出目标行,关键在于避免把
grep
自身也当成匹配结果。 基础用法:快速定位进程是否存在 直接组合命令即可:
ps aux | grep nginx
—— 列出所有含 “nginx” 的进程行,包括主进程和可能的 worker 进程
ps aux | grep python3
—— 找正在运行的 Python3 脚本或服务
ps aux | grep java
—— 显示所有 Java 进程(但结果里通常会多出一条
grep java
) 避开 grep 自身:让结果更干净 因为
ps aux | grep java
这条命令本身也会被
grep
匹配到,导致输出里混入无关的
grep
行。常用两种写法绕过: 稿定在线PS PS软件网页版 下载
ps aux | grep java | grep -v grep
—— 用
grep -v
排除掉含 “grep” 的行
ps aux | grep [j]ava
—— 把关键字首字母放进方括号,
grep
命令自身不匹配该模式,结果更简洁 提取 PID:为后续操作做准备 查到进程后,通常需要它的 PID(进程 ID),它在
ps aux
输出的第二列。可配合
awk
提取:
ps aux | grep '[n]ginx' | awk '{print $2}'
—— 只输出匹配行的 PID
ps aux | grep 'myapp\.py' | head -1 | awk '{print $2}'
—— 取第一个匹配项的 PID,适合脚本中使用 结合 kill 终止进程(可选延伸) 拿到 PID 后可以直接终止:
kill $(ps aux | grep '[n]ginx' | awk '{print $2}')
—— 杀掉第一个匹配的 nginx 进程
kill -9 $(ps aux | grep 'zombie' | awk '{print $2}')
—— 强制终止(慎用,-9 不给进程清理机会)

相关文章