尝试使用subprocess.run运行bash命令,但未成功运行

时间:2019-10-03 15:11:50

标签: python bash subprocess

我正在尝试创建python bash脚本来启动Web客户端。我使用subprocess.run运行该命令,但经过多次尝试仍未成功。我的可执行文件的类型为(.out),放在目录/ opt / client / linuxclientd / bin /中。当您位于同一目录中时,它将使用两个参数并使用命令“ sudo ./client.out用户名密码”运行。到目前为止,我已经尝试了以下python脚本,但未正确完成工作

import os
import subprocess

os.chdir('/opt/client/linuxclientd/bin/') #to get into the directory where app is installed
subprocess.run(['sudo', 'service', 'clientd', 'start'],stdout=subprocess.PIPE) #to start service
client = subprocess.run(['sudo', './client.out', 'username', 'password'], timeout =10, stdout=subprocess.PIPE)
output = client.stdout.decode('utf-8')
print(output)

问题是脚本启动了服务,然后不执行任何操作而挂断,并且10秒钟后出现超时异常。这意味着脚本无法运行“ sudo”,“ ./ client.out”,“用户名”,“密码””命令,因此我的无头客户端无法启动。

我们将不胜感激任何以更好的方式帮助您的建议。预先感谢。

0 个答案:

没有答案