gpt4 book ai didi

python - 执行 Linux shell 脚本

转载 作者:行者123 更新时间:2023-12-01 05:22:38 25 4
gpt4 key购买 nike

我正在尝试从 Python 执行一个以 ipaddress 作为参数的 shellscript,

我正在使用以下命令,但出现错误,我需要以 Sudo 用户身份执行此 shellscript..

错误:-

[root@linuxhost web]# python test.py
29575
usage: sudo [-D level] -h | -K | -k | -V

usage: sudo -v [-AknS] [-D level] [-g groupname|#gid] [-p prompt] [-u user

name|#uid]



process = subprocess.Popen(['sudo','/usr/local/bin/test.sh','127.0.0.1'],stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
process.wait()

我尝试通过直接使用 sudo 调用 shellscript,但仍然失败..

process = subprocess.Popen(['sudo /usr/local/bin/test.sh','127.0.0.1'],stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)

最佳答案

您不能将列表参数与 shell=True 结合使用。使用类似的东西

process = subprocess.Popen('sudo /usr/local/bin/test.sh 127.0.0.1',
stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)

或者不使用shell=True

process = subprocess.Popen(['sudo','/usr/local/bin/test.sh','127.0.0.1'],
stdout=subprocess.PIPE,stderr=subprocess.PIPE)

关于python - 执行 Linux shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22000883/

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