【发布时间】:2017-04-22 16:56:54
【问题描述】:
我正在尝试创建一个脚本,它会打开命令提示符并导航到一个文件夹以运行批处理作业。
import subprocess
import os
import sys
subprocess.Popen(['start', 'cmd', '/k',
'cd/Program Files/PremiumSoft/Navicat Premium'
& 'navicat.exe -batchJob testJob'])
这两个命令可以独立运行,但我不知道如何将它们放在一起并在同一个脚本中运行。
【问题讨论】:
-
这可能更多地与
bat-file 在Windows cmd 中写入和运行命令有关,而不是与Python 和subprocess相关。 -
看起来您可以在不涉及 cmd shell 的情况下执行此操作:
navicat = os.path.join(os.environ['ProgramFiles'], 'PremiumSoft', 'Navicat Premium', 'navicat.exe');subprocess.Popen([navicat, '-batchJob', 'testJob'], cwd=os.path.dirname(navicat))。虽然我对将工作目录设置为Program Files的子目录持怀疑态度。程序在那里没有业务写入数据。
标签: python windows subprocess command-prompt