【发布时间】:2023-03-07 13:46:02
【问题描述】:
我正在尝试使用子进程库通过 Python 脚本中的命令行代码运行 7zip。
当我直接在命令行中使用下面的代码时,它可以正常工作。但是,我无法让它与子进程一起运行。
set path="C:\Program Files\7-Zip\";%path%
7z x C:\\Users\\ferro\\Desktop\\teste.zip -pabc123 -oC:\\Users\\ferro\\Desktop -aos -y
我正在尝试执行的当前代码如下。
import subprocess
import os
os.system('set path="C:\Program Files\7-Zip\";%path%')
command01 = ['7z', 'x', 'C:\\Users\\ferro\\Desktop\\teste.zip', '-p', 'abc123', '-o', 'C:\\Users\\ferro\\Desktop', '-aos', '-y']
subprocess.call(command01)
错误信息是“FileNotFoundError: [WinError 2]”
有谁知道我的错误在哪里?
【问题讨论】:
-
你必须小心字符串中的反斜杠。在某些情况下,这可以指示控制字符。请您尝试执行以下操作吗?:
os.system(r'set path="C:\Program Files\7-Zip\";%path%') -
嗨,伯尼。谢谢你的解释。我尝试了您的建议,但不幸的是我得到了相同的结果。
标签: python cmd zip subprocess 7zip