如何在Python脚本中使用带密码的“sudo”命令?

2024-05-15 15:53:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在脚本中运行sudo命令来打开和关闭正在执行的脚本的网络连接。 在本例的代码中,密码是纯文本的,但是对于真正的程序,它将是一个混乱的文件。你知道吗

我尝试了多个在线代码示例,包括popen和call,但都不起作用,但它们不起作用,我也不太明白它们是如何工作的。你知道吗

def run_script(script, stdin=None):
    proc = subprocess.Popen(['sudo' , 'bash', '-c', script],
        stdout=subprocess.PIPE, stderr=subprocess.PIPE,
        stdin=subprocess.PIPE)
    proc.communicate(b'password')
command = "ip link set enp6s0 down"
run_script(command)

脚本运行,但实际上什么都不会做。没有错误。你知道吗


Tags: run代码文本命令脚本密码stdinsudo