我在批处理文件中使用以下命令以递归方式将文件解压缩到名称与zip文件相同的文件夹中。
@echo off
for /R %%I IN (' dir /d /s *.zip ') DO (
"C:\Program Files\7-Zip\7z.exe" x -y -o"%%~dpI\%%~nI" "%%I"
)
我有一个zip文件,例如abc.zip,这个zip包含另一个zip,例如mns.zip。 因此,当我运行bat文件时,该命令正确解压缩所有文件。 也就是说,使用abc.zip的内容创建文件夹abc,并且在该文件夹中,mns.zip也被解压缩到文件夹。 按我的意愿工作。但是我在命令提示符下使用相同的消息会收到很多错误。我想避免这种情况并运行bat文件而不会出错。
此处再次出现错误:
系统错误:系统找不到指定的文件。
7-Zip [64] 16.02:Copyright(c)1999-2016 Igor Pavlov:2016-05-21
扫描驱动器以获取存档:
错误:文件名,目录名或卷标语法是 不正确。 D:\ Unzip_folders \ New folder \ 23Nov2015 \ error_log.17112015 \ d
请帮我解决这个问题..如何摆脱这些错误?
答案 0 :(得分:0)
假设程序运行正常,您可以做的一件事就是抑制所有错误输出。
为此,您可以将> nul 2> nul
附加到7zip命令。这会将所有警告和错误输出重定向到null。如果你只想重定向错误,只包括nul 2.请注意,这可能不是最佳解决方案,但如果你想要摆脱错误,这将有效