linux -'ps'命令给出错误的pid或sigkill找不到pid

问题描述

一个我想要持久杀死的持久过程。 为此,我做了一个非常简单的python脚本:

import os
import signal
While True:
    os.system("ps >> /sdcard/newdata.txt")
    file = open("/sdcard/newdata.txt","r")
    for x in file:
        if (len(x.split())<9):
            continue
        elif (x.split()[8] == "/system/bin/XXXX"):
            pid = int(x.split()[1])
            os.kill(pid,signal.SIGKILL)
            break
    file.close()

XXXX代表触发该过程的文件的二进制名称。 在我的特定情况下,此二进制文件XXXX是识别我要终止的进程的好方法

我认为它应该可以工作,但是会返回错误

“ ProcessLookupError:[Errno 3]没有这样的过程”

我打印了pid并多次运行了脚本。 pid是固定的,这意味着该进程没有重生,但它始终会返回错误,好像pid是错误的。

有人可以解释吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)