web-dev-qa-db-ja.com

cmdを使用してファイルを解凍する方法

ファイルをZipまたはUNZIPするBATファイルを作成したいです。ファイルを圧縮するために、私はこの質問を見つけました: あなたはZipファイルに唯一のWindowsの内蔵の機能を使ってコマンドプロンプトからファイルを圧縮することができますか?

そこに与えられた答えは私のために素晴らしくそして働いています、しかし私はファイルを解凍する方法について少しの情報も見つけることができませんでした。リンクのように、私はサードパーティ製のツールを想定することはできません(winRARを除く)。

どうもありがとうございます、英語の間違いをお詫び申し上げます

8
Chen Tasker

このバッチファイルコードは、ファイルを解凍するのに役立ちます。

@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%

N.B。C:\ Tempは、展開(UnZip)ファイルを保存するフォルダです。

そして、c:\ FolderName\batch.Zipがソースパスです(Zipファイルが格納されている場所)。

必要に応じて、フルファイルパス(ドライブ、フォルダ、Zipファイル名)を変更してください。

5
Rajesh S

Windows 10をお持ちの場合は、はるかに短いPowershellと同等のものを使用できます。

Expand-Archive -Force C:\path\to\archive.Zip C:\where\to\extract\to
6
MegaBatchGames
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
spoorthi vaidya

Windows 10ビルド17063以降では、tar.exe(* nixに類似)を使用できます。これは、nanoserver Dockerコンテナーでも使用可能です

C:\> tar -xf archive.Zip
0
venimus