Wie entpacke ich eine Datei mit dem cmd?

Ich möchte eine BAT-Datei erstellen, die eine Datei komprimiert oder entpackt. Zum Zippen einer Datei habe ich diese Frage gefunden: Können Sie eine Datei über die Eingabeaufforderung komprimieren, indem Sie NUR die in Windows integrierte Fähigkeit zum Komprimieren von Dateien verwenden?

Die dort gegebenen Antworten sind großartig und funktionieren für mich, aber ich konnte keine Informationen zum Entpacken der Dateien finden. Wie im Link kann ich keine Tools von Drittanbietern annehmen (außer WinRAR).

Dank Voraus und sorry für Deutsch Fehler

Author: Chen Tasker, 2018-04-16

5 answers

Dieser Batch-Dateicode hilft Ihnen beim Entpacken einer Datei.

@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 ist ein Ordner, in dem die extrahierte (entpackte) Datei gespeichert ist.

Und c:\FolderName\batch.zip ist Quellpfad ,( wo Zip-Dateien gespeichert sind).

Bitte ändern Sie den vollständigen Dateipfad (Laufwerk, Ordner und Zip-Dateiname) entsprechend Ihrem Bedarf.

 13
Author: Rajesh S,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-04-16 07:32:58

Unter Windows 10 Build 17063 oder höher können Sie tar.exe verwenden (ähnlich dem *nix). Dies ist auch im Nanoserver-Docker-Container verfügbar

C:\> tar -xf archive.zip
 32
Author: venimus,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-08-23 07:20:37

Wenn Sie Windows 10 haben, können Sie das viel kürzere Powershell-Äquivalent verwenden

Expand-Archive -Force C:\path\to\archive.zip C:\where\to\extract\to
 31
Author: MegaBatchGames,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-02-16 15:01:33

Wenn Sie Windows 10 (und Powershell) haben, aber trotzdem von innen entpacken möchten .bat/.cmd-datei (cmd.exe), können Sie

powershell -command "Expand-Archive -Force '%~dp0my_zip_file.zip' '%~dp0'"

Wobei my_zip_file.zip die zu entpackende Datei ist und %~dp0 auf denselben Ordner verweist .bat/.cmd-datei ist (Ändern Sie den Ordner, falls erforderlich).

 5
Author: np8,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-03-17 17:30:49
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

Das folgende vbscript kann als Datei gespeichert werden.vbs und dann mit Batch-Skript wie:

file.vbs

Speichern Sie diese in .bat-Datei und führen Sie es.

 2
Author: spoorthi vaidya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-04-30 05:57:39