如何使用 cmd 解压缩文件?

我想制作一个可以压缩或解压缩文件的 BAT 文件。关于压缩文件,我找到了这个问题: https://superuser.com/questions/110991/can-you-zip-a-file-from-the-command-prompt-using-only-windows-built-in-capabili/112094

那里给出的答案很好,对我也有用,但我找不到任何关于如何解压文件的信息。和链接中一样,我无法假设任何第三方工具(winRAR 除外)。

感谢您的宝贵意见,如有英文错误,敬请原谅

如果您使用的是 Windows 10,可以使用更简短的 Powershell 对应程序

Expand-Archive -Force C:\path\to\archive.zip C:\where\to\extract\to
评论(1)
解决办法

该批处理文件代码将帮助您解压文件。

@echo off
setlocal
cd /d %~dp0
Call :UnZipFile "C:\Temp\" "c:\FolderName\batch.zip"
exit /b

:UnZipFile  
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%

注意 C:\Temp 是存放解压文件的文件夹。

c:\FolderName\batch.zip 是源路径(Zip 文件的存放位置)。

*请根据需要更改完整的文件路径(驱动器、文件夹和 Zip 文件名)。

评论(0)
ZipFile="C:\Users\spvaidya\Music\folder.zip"
ExtractTo="C:\Users\spvaidya\Music\"

'If the extraction location does not exist create it.

Set fso = CreateObject("Scripting.FileSystemObject")

If NOT fso.FolderExists(ExtractTo) Then

 fso.CreateFolder(ExtractTo)

End If

'Extract the contants of the zip file.

set objShell = CreateObject("Shell.Application")

set FilesInZip=objShell.NameSpace(ZipFile).items

objShell.NameSpace(ExtractTo).CopyHere(FilesInZip)

Set fso = Nothing
Set objShell = Nothing

可将以下 vbscript 保存为 file.vbs,然后使用批脚本运行,如

file.vbs

将其保存为 .bat 文件并运行。

评论(0)