簡體   English   中英

在特定位置打開命令提示符,然后使用 python 在該位置運行帶有一些命令行參數的腳本

[英]Open a command prompt at a specific location followed by running a script at that location with some command line arguments using python

我能夠使用 subprocess 模塊打開命令提示符並將目錄更改為所需的位置,但是我無法傳遞更多參數來運行應用程序以及一些命令行參數。 我是 subprocess 模塊的新手,所以我在 stackoverflow 上做了一些搜索,找不到想要的結果。

我的代碼:

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

期望的輸出:

Path: C:\Users\Application_folder\Application.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:\Users\Application_Folder\Application.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前綴。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM