2024-04-29 15:16:43 发布
网友
我想从Python脚本在终端执行一个命令。
./driver.exe bondville.dat
此命令正在终端中打印,但无法执行。
以下是我的步骤:
echo = "echo" command="./driver.exe"+" "+"bondville.dat" os.system(echo + " " + command)
它应该执行命令,但它只是在终端上打印。当人工喂食同样的东西时,它正在执行。我怎么从剧本里做这个?
echo终端命令返回其参数,因此将命令打印到终端是预期的结果。
echo
你正在输入echo driver.exe bondville.dat并且它正在运行你的driver.exe程序吗? 如果没有,则需要去掉代码最后一行的echo:
echo driver.exe bondville.dat
driver.exe
os.system(command)
试试这个:
import subprocess subprocess.call("./driver.exe bondville.dat")
您可以使用subprocess.check_call模块来运行该命令,而不需要echo来运行该命令:
from subprocess import check_call check_call(["./driver.exe", "bondville.dat"])
这相当于从bash运行./driver.exe bondville.dat。
如果要获得输出,可以使用check_outout:
from subprocess import check_output out = check_output(["./driver.exe", "bondville.dat"])
在您自己的代码中,您基本上是在回显字符串command,而不是实际运行命令,即echo "./driver.exe bondville.dat",该命令将在shell中输出./driver.exe bondville.dat。
command
echo "./driver.exe bondville.dat"
echo
终端命令返回其参数,因此将命令打印到终端是预期的结果。你正在输入
echo driver.exe bondville.dat
并且它正在运行你的driver.exe
程序吗?如果没有,则需要去掉代码最后一行的echo:
试试这个:
您可以使用subprocess.check_call模块来运行该命令,而不需要echo来运行该命令:
这相当于从bash运行
./driver.exe bondville.dat
。如果要获得输出,可以使用check_outout:
在您自己的代码中,您基本上是在回显字符串
command
,而不是实际运行命令,即echo "./driver.exe bondville.dat"
,该命令将在shell中输出./driver.exe bondville.dat
。相关问题 更多 >
编程相关推荐