Extraer o descomprimir archivo en secuencia de Batch comandos

MD Aminul Islam 20 marzo 2023
Extraer o descomprimir archivo en secuencia de Batch comandos

En este artículo, veremos cómo podemos crear un Batch script para extraer archivos de un archivo zip.

Crear secuencia de Batch comandos para descomprimir archivo

Podemos extraer o descomprimir un archivo usando Batch Script, donde debemos incluir un directorio de destino donde se extraerá el archivo y un directorio de nuestro archivo fuente. Para descomprimir un archivo comprimido, necesitamos integrar un lenguaje de secuencias de comandos diferente dentro de su Batch Script, Visual Basic Script, conocido en breve como VBS.

Guión por lotes:

@ECHO off
setlocal
CD /d %~dp0
CALL :UnZipFile "C:\ExtractLocation\" "C:\Sample\sample.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%

En el código anterior, llamamos a la función :UnZipFile. Integramos el script VB para incluir la funcionalidad de descompresión en la función.

Puede notar que pasamos dos parámetros a nuestra función donde el primer parámetro(<ExtractTo>) es para el directorio donde se extraerá el archivo, y el segundo parámetro(<newzipfile>) es para el directorio donde el archivo fuente es.

Cuando ejecuta el Batch script anterior proporcionando correctamente todos los directorios necesarios, obtendrá el archivo zip extraído en el directorio que proporciona para extraer archivos.

Recuerde que los comandos que discutimos aquí son solo para el símbolo del sistema de Windows o el entorno CMD.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

Artículo relacionado - Batch Script