Python子流程.Popen不使用flask

2024-09-28 01:29:14 发布

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

我以root用户身份运行此脚本:

import subprocess
proc = subprocess.Popen(['chpasswd'], stdin=subprocess.PIPE)
proc.stdin.write("username:password")
print("Password updated")

当脚本以root用户身份运行时,它会按预期工作

但是,当我尝试在flask下运行它时,它会打印"Password updated",但实际上它不会更新密码。原因可能是什么,以及如何使其发挥作用

...
@app.route('/')
def some_path():
    if condition:
        proc = subprocess.Popen(['chpasswd'], stdin=subprocess.PIPE)
        proc.stdin.write("username:password")
        print("Password updated")
...

Tags: 用户脚本stdinusername身份rootpasswordproc

热门问题