ps axj | grep 和 which命令

ps axj | grep 命令

这是 Linux/Unix 系统中最常用的进程查询组合命令 ,作用是列出系统所有进程,并精准过滤出你要找的进程。

1. 命令各部分含义

① ps axj
ps = 查看进程状态的基础命令

参数含义:

  • a:显示所有用户的进程(不单是当前用户)
  • x:显示无终端关联的进程(守护进程 / 后台服务)
  • j:用任务格式展示,包含父进程 ID、进程组 ID、会话 ID 等详细信息

② |

管道符:把左边命令的输出,作为右边命令的输入

③ grep

过滤工具:筛选包含指定关键词的行

2. 完整正确用法(必须加关键词)

grep 后面必须跟你要搜索的进程名称 / 关键词 ,否则命令不完整。

示例 1:搜索 Nginx 进程

bash 复制代码
ps axj | grep nginx

示例 2:搜索 MySQL 进程

bash 复制代码
ps axj | grep mysql

3. 输出结果说明

bash 复制代码
ps axj | grep test

执行后会显示类似内容:

bash 复制代码
2021  2068  2068  1992 pts/1     2068 S+       0   0:00 ./test
1888  2107  2106  1859 pts/0     2106 R+       0   0:00 grep --color=auto test 
  • 最后一行是 grep 自身进程,不是目标服务进程,可忽略
  • 前面的行就是你要找的真实进程

4. 优化(推荐):过滤掉 grep 自身进程

bash 复制代码
ps axj | grep test | grep -v grep

-v = 反向匹配,排除包含 grep 的行

总结

  1. ps axj :列出系统所有进程 + 详细任务信息
  2. | grep 关键词:精准筛选目标进程
  3. 完整用法:ps axj | grep 进程名
  4. 优化用法:ps axj | grep 进程名 | grep -v grep

什么是grep自身进程

执行 ps axj | grep test

2021 2068 2068 1992 pts/1 2068 S+ 0 0:00 ./test

1888 2107 2106 1859 pts/0 2106 R+ 0 0:00 grep --color=auto test

第2行是什么?

这行输出不是你要找的 test 进程 ,而是你刚才执行的 grep 命令自己,是系统的正常现象,完全不用管。

1. 这行到底是什么?

plaintext 复制代码
1888  2107  2106  1859 pts/0     2106 R+       0   0:00 grep --color=auto test

拆解开:

  • grep:这是你执行的过滤命令本身
  • --color=auto test :搜索的关键词是 test
  • R+:表示这个 grep 正在运行、瞬间执行完就消失

2. 为什么会出现它?

因为执行:

bash 复制代码
ps axj | grep test

系统在执行时:

  1. 先运行 ps axj 列出所有进程
  2. 再运行 grep test 去过滤
  3. grep 自己也会变成一个进程,所以也会被 ps 列出来
  4. 因为它包含 test 关键词,就把自己也匹配到了

3.怎么去掉这行干扰?

加一句 排除 grep 自身 即可:

bash 复制代码
ps axj | grep test | grep -v grep

这样输出就只剩下真正的 test 进程,干净清爽。

which命令

bash 复制代码
which 命令名

示例:

复制代码
which grep
which ps
which ls
which python
bash 复制代码
[root@iv-yebv3uyg3kbw80fb2oiv ~]# which ls
alias ls='ls --color=auto'
	/usr/bin/ls
[root@iv-yebv3uyg3kbw80fb2oiv ~]# which ll
alias ll='ls -l --color=auto'
	/usr/bin/ls
[root@iv-yebv3uyg3kbw80fb2oiv ~]# which g++
/opt/rh/devtoolset-7/root/usr/bin/g++
[root@iv-yebv3uyg3kbw80fb2oiv ~]# 

它会告诉你这个命令在哪个目录,比如:

复制代码
/usr/bin/grep
相关推荐
xailorliu1 小时前
SLIC_超像素算法
c++·opencv·目标检测·机器学习·计算机视觉
苏打豆1 小时前
CRISP源码阅读——基于ROS2力矩反馈控制器与速度加速度零空间
c++·线性代数·算法·矩阵·机器人
小小龙学IT2 小时前
snap7 开源西门子 S7 通信协议库深度解析
c++·开源
小溪学编程3 小时前
从 C++ 的规范变迁看语言发展
jvm·c++·面试
ShineWinsu4 小时前
对于Redis:string类型的解析
java·c++·redis·分布式·缓存·面试·string
YYYing.5 小时前
【设计模式系列 (七) 】桥接模式
c++·后端·设计模式·桥接模式
高山有多高6 小时前
【Linux笔记】Linux自定义Shell
linux·c++
悠仁さん6 小时前
【C++】vector 类
开发语言·c++
_upupup6 小时前
智能指针的原理及简单模拟实现(C++)
开发语言·c++
l1t6 小时前
DeepSeek总结的OpenZL压缩变换器
c++·算法