You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在终端管道中用xargs配合sudo权限批量杀死指定进程?

解决sudo批量杀进程的权限问题

直接把sudo加到kill前面,让xargs把PID传递给带sudo的kill命令即可,修正后的命令:

ps -aux | rg "some_procs" | awk '{print $2}' | xargs sudo kill -9

为什么之前的写法无效?

  • 若写成sudo ps -aux | ... | xargs kill -9:仅ps用了sudo权限,但最终执行kill的还是当前普通用户,依然会权限不足。
  • 若写成... | sudo xargs kill -9:sudo仅赋予了xargs进程权限,kill依然以当前用户身份运行,无法解决权限问题。

额外提示:避免误杀过滤进程

如果不想误杀rg、awk这类用于过滤的进程,可以在管道中添加排除步骤:

ps -aux | rg "some_procs" | rg -v "rg|awk" | awk '{print $2}' | xargs sudo kill -9

如果需要查看只有root才能看到的进程,也可以让ps运行在sudo权限下:

sudo ps -aux | rg "some_procs" | rg -v "rg|awk" | awk '{print $2}' | xargs sudo kill -9

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 05:10:26