You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在ADB Shell中按关键词匹配显示完整进程信息?

解决ADB Shell中按关键词匹配并显示完整进程信息的问题

这问题我之前也碰到过,pgrep确实只返回进程ID,没法看到ps默认的完整列信息,下面给你几个实用的组合命令,完全能满足你的需求:

方法1:用ps + grep保留表头并过滤进程

这个命令会保留ps的表头行,同时筛选出含指定关键词的进程,还能排除grep自身的进程干扰:

ps | grep -E 'USER|whatsapp' | grep -v grep
  • ps:输出所有进程的完整信息,包含你需要的USER、PID、PPID、VSIZE等列
  • grep -E 'USER|whatsapp':用扩展正则表达式匹配,要么是表头行(含USER),要么是包含目标关键词(这里是whatsapp)的进程行
  • grep -v grep:排除掉grep命令自身的进程,避免它出现在结果里

方法2:用awk更灵活地筛选(推荐)

awk可以直接控制输出行,不用额外过滤grep进程,写法更简洁可靠:

ps | awk '/whatsapp/ || NR==1'
  • NR==1:保留第一行(也就是表头行)
  • /whatsapp/:匹配包含指定关键词的进程行

示例输出

执行上面的命令后,你会得到和期望完全一致的输出格式:

USER PID PPID VSIZE RSS WCHAN PC NAME
u0_a64 29775 627 1021744 37524 SyS_epoll_ 0000000000 S com.whatsapp

如果需要匹配其他关键词,只需要把命令里的whatsapp换成你要找的关键词就行~

内容的提问来源于stack exchange,提问作者arjun

火山引擎 最新活动