首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用CMD解压多个zip文件,无需第三方工具

使用CMD解压多个zip文件,无需第三方工具
EN

Stack Overflow用户
提问于 2019-05-17 21:29:42
回答 1查看 157关注 0票数 0

我有一个拼凑在一起的批处理脚本,可以提取一个单独的压缩文件使用内置的VBS。我现在正在尝试让它读取文件夹中的多个文件,并在保存之前将日期时间戳附加到文件名上。

为一个文件工作是这样的:

代码语言:javascript
复制
cd /d %~dp0
Call :UnZipFile "%~dp0UNZIPPED\" "%~dp0dvt_trans_C_20190517123318.dat.zip"
exit /b

:UnZipFile <ExtractTo> <newzipfile>
set vbs="%temp%\_.vbs"
if exist %vbs% del /f /q %vbs%
>%vbs%  echo Set fso = CreateObject("Scripting.FileSystemObject")
>>%vbs% echo If NOT fso.FolderExists(%1) Then
>>%vbs% echo fso.CreateFolder(%1)
>>%vbs% echo End If
>>%vbs% echo set objShell = CreateObject("Shell.Application")
>>%vbs% echo set FilesInZip=objShell.NameSpace(%2).items
>>%vbs% echo objShell.NameSpace(%1).CopyHere(FilesInZip)
>>%vbs% echo Set fso = Nothing
>>%vbs% echo Set objShell = Nothing
cscript //nologo %vbs%
if exist %vbs% del /f /q %vbs%

尝试使用/r循环:

代码语言:javascript
复制
setlocal
cd /d %~dp0
for /r %%v in (*.zip) do
Call :UnZipFile "%~dp0UNZIPPED\" "%%v"
exit /b

似乎没有将文件名传递给vbs

然后,我尝试将datetime附加到文件名的末尾,如下所示:

>>%vbs% echo objShell.NameSpace(%1).CopyHere(FilesInZip)

但我甚至不知道从何说起。

想法?

EN

回答 1

Stack Overflow用户

发布于 2019-05-17 23:41:39

所有工作都使用:

代码语言:javascript
复制
setlocal
cd /d %~dp0
for /r %%G in (*.zip) do Call :UnZipFile "%~dp0UNZIPPED\" "%%G"
exit /b

:UnZipFile <ExtractTo> <newzipfile>
set vbs="%temp%\_.vbs"
if exist %vbs% del /f /q %vbs%
>%vbs%  echo Set fso = CreateObject("Scripting.FileSystemObject")
>>%vbs% echo If NOT fso.FolderExists(%1) Then
>>%vbs% echo fso.CreateFolder(%1)
>>%vbs% echo End If
>>%vbs% echo set objShell = CreateObject("Shell.Application")
>>%vbs% echo set FilesInZip=objShell.NameSpace(%2).items
>>%vbs% echo objShell.NameSpace(%1).CopyHere(FilesInZip)
>>%vbs% echo Set fso = Nothing
>>%vbs% echo Set objShell = Nothing
cscript //nologo %vbs%
if exist %vbs% del /f /q %vbs%
cd /d %~dp0UNZIPPED
ren *.dat "* %Date:/= % %Time::=.%.*"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56187471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档