如何解决如果可能,如何使用操作系统或子进程从命令行程序一个接一个地执行命令?
我想问有没有办法在python中运行命令行程序的命令,但是代码必须重复执行,即我想要的解决方案不是这个
os.system(f"xxx.exe {command}").
我尝试了 subprocess.run 函数,将 exe 的名称后跟我想在方括号内执行的命令,然后是这些关键字参数:stdout=subprocess.PIPE,text=True
然而,奇怪的是它不会使 data.stdout
出于某种原因,整个输出。只有初始代码的输出被分配给它。这可能是因为括号内的参数不代表不同的行。因此,我想我使用 subprocess 所做的事情与我通过 os 库执行单行命令的方式相同。
也就是说,我的问题是使用 subprocess 或 os,如何执行必须在不同行中执行的代码,或者如果不可能,如何在 python 中一个接一个地执行命令行程序中的命令?
编辑:我应该做这样的事情吗?
os.system(f"xxx.exe {command1} \n {command2}")
解决方法
这是一种捷径,但您可以这样做:
import os
import pyautogui
os.startfile('Path_to_command_prompt')
pyautogui.PAUSE = however long it takes to run each command
pyautogui.write('Command_1')
pyautogui.press('enter')
pyautogui.write('Command_2')
pyautogui.press('enter')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。