我有以下命令:
for %f in (*.txt) do "C:\WINDOWS\7za.exe" a -t7z "%f.7z" "%f"
我从vba脚本发送到cmdprompt。这有效,但现在我必须包含执行压缩的文件夹的路径。我这样做:
for %f in (usebackq "C:\Bob\WithBlank\NeuerOrdner3\" *.txt) do "C:\WINDOWS\7za.exe" a -t7z "%f.7z" "%f"
为什么我会得到一个包含所有* .txt文件的zip文件,而不是每个txt文件一个zip文件?
答案 0 :(得分:0)
我不知道为什么你的第二个命令行将所有文件放入一个档案中,但usebackq
不属于括号内。这应该有效:
for %f in ("C:\Bob\WithBlank\NeuerOrdner3\*.txt") do (
"C:\WINDOWS\7za.exe" a -t7z "%~dpnf.7z" "%~ff"
)
答案 1 :(得分:0)
从.BAT文件运行它:
for %%a in (*.xml) do "\Program Files\7-Zip\7z.exe" a "%%~na.7z" "%%a"
7z文件将具有与原始文件相同的名称