gpt4 book ai didi

linux - 杀死除一个 python 脚本和 grep 进程之外的所有 python 脚本

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:09:42 25 4
gpt4 key购买 nike

我如何在 bash 中运行命令来杀死所有 python 脚本,除了名为 test.py 的脚本和 grep 的 pid 本身,以防我们使用类似 ps -ef |grep

我想我可以使用类似 pgrep python 的东西来忽略 grep 进程,但是我如何同时排除 test.py 脚本?我知道有一个选项可以执行 grep -v,是否有选项可以执行 pgrep -v

说明:除了 grep process- 意味着当我们执行例如 ps -ef |grep test1.py 时,我们还会得到用于产生此结果的 grep pid。我不想杀死它,因为在显示结果的阶段这个过程不再存在。

编辑:我需要这个命令通过 python 的 subprocess 模块
有效k = subprocess.Popen('[some_bash_cmd_here]',shell=True)
k.wait()

最佳答案

您可以使用 pgrep -fl python 获取所有与 python 匹配的命令,然后通过 awk 获取进程 ID从命令中排除 test.py,最后将其通过管道传递给 xargs kill:

pgrep -fl python | awk '!/test\.py/{print $1}' | xargs kill

关于linux - 杀死除一个 python 脚本和 grep 进程之外的所有 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39545994/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com