如何使用 cmd 解压文件?

如何使用 cmd 解压文件?

我想制作一个可以压缩或解压文件的 BAT 文件。对于压缩文件,我发现了这个问题: 您能否仅使用 Windows 内置的压缩​​文件功能从命令提示符压缩文件?

那里给出的答案很棒,对我来说很实用,但我找不到有关如何解压文件的任何信息。就像在链接中一样,我不能假设任何第三方工具(winRAR 除外)。

提前致谢并对英语错误表示抱歉

答案1

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

@echo off
setlocal
cd /d %~dp0
Call :UnZipFile "C:\Temp\" "c:\FolderName\batch.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%

注意:C:\Temp 是存储提取(解压)文件的文件夹。

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

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

答案2

在 Windows 10 build 17063 或更高版本中,您可以使用tar.exe(类似于 *nix)。这也可以在 nanoserver docker 容器中使用

C:\> tar -xf archive.zip

注意:zip 支持没有很好的文档记录

參考文獻:https://www.freebsd.org/cgi/man.cgi?query=bsdtar&sektion=1&manpath=FreeBSD+5.3-stable

答案3

如果你使用的是 Windows 10,则可以使用更短的 Powershell

Expand-Archive -Force C:\path\to\archive.zip C:\where\to\extract\to

答案4

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 文件并运行。

相关内容