在python脚本中运行CMD行

2024-09-26 04:57:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正试图在windows终端中运行一个特定的命令,但使用的是Python(3.7.7)脚本。我知道这个命令在CMD终端中工作:

"F:\Prog Folder\7-Zip\7z" e "F:\Folder Name\Zipfile.7z" -o"F:\Folder Name\Dolphin Folder" *.iso -mx5

然而,由于Windows的语法和敏感性,调用子进程并使用相同的命令并不是那么简单。以下是我现在作为python脚本的一部分所拥有的内容:

import subprocess

subprocess.run(['cmd', '/k', "\"\"F:\Prog Folder\7-Zip\7z\" \"x\" \"F:\Folder Name\Zipfile.7z\" \"-o\"F:\Folder Name\Dolphin Folder\"\" \"*.iso\" \"-mx5\"\""])

我也尝试过(subprocess.call),但仍然从cmd终端收到此错误,无法解决问题:

The filename, directory name, or volume label syntax is incorrect.

对此有什么建议吗?我知道反斜杠很敏感,但我认为我的建议是正确的

编辑

我尝试了评论中的建议:

os.system(""F:\Prog Folder\7-Zip\7z" e "F:\Folder Name\Zipfile.7z" -o"F:/Folder Name/Dolphin Folder" *.iso -mx5")

这给了我一个“无效语法”错误,并突出显示了驱动器号“F”

我尝试了subprocess.call和subprocess.run,如Calling an external command from Python所示,但没有成功。我只需要基本上通过python执行CMD中的同一行代码;所以,语法一定是个问题,但关于StackOverflow的任何预先存在的问题都不适用于我的情况


Tags: runname命令脚本cmd终端语法iso