在特定位置打开命令提示符,然后在该位置使用python运行带有一些命令行参数的脚本



我能够打开命令提示符并使用子流程模块将目录更改为所需位置,但我无法传递更多参数来运行应用程序以及一些命令行参数。我是子流程模块的新手,所以我在stackoverflow上进行了一些搜索,但找不到所需的结果。

Mycode:

import subprocess
path = r"C:/Users/Application_Folder"
p = subprocess.Popen(r"cmd.exe", cwd="C:/Project_Files", shell=True)

所需输出:

Path: C:UsersApplication_folderApplication.exe
Need to open the cmd prompt in windows at the Application_folder location, 
run the Application.exe by passing some command line arguments, using python

只需传递您实际想要执行的命令行,以及可执行路径和您想要传递的任何参数:

command_line = [r'C:UsersApplication_FolderApplication.exe', '/argument1', '/argument2']
p = subprocess.Popen(command_line, cwd=r'C:Project_Files')

需要记住的几个注意事项:

  • 不应该使用shell=True。这里没有必要——事实上几乎从来没有必要——但它确实会带来潜在的安全风险
  • 原始字符串文字(从r'r"开始(的全部目的是更改字符串中反斜杠字符的解释方式。r'C:Program Files'"C:\Program Files"完全相同。如果您的字符串中没有反斜杠,请不要使用r前缀

相关内容

  • 没有找到相关文章

最新更新