如何使用命令行解压缩文件? [关闭](How to unzip a file using the

2019-06-23 18:03发布

我可以通过命令行解压缩文件? 优选使用开源/免费工具。

Answer 1:

你可以使用:

http://membrane.com/synapse/library/pkunzip.html

要么

7zip的: http://www.7-zip.org/download.html

免费字节邮编:http://www.freebyte.com/fbzip/

或infozip: http://infozip.sourceforge.net/



Answer 2:

如果你已经在你的PC上的Java和bin目录在您的路径(在大多数情况下),你可以使用命令行:

jar xf test.zip

或者,如果没有在您的路径:

C:\Java\jdk1.6.0_03\bin>jar xf test.zip

一套完整的可用的jar工具选择这里 。

例子:

Extract jar file
    jar x[v]f jarfile [inputfiles] [-Joption] 
    jar x[v] [inputfiles] [-Joption]


Answer 3:

首先,使用VBScript来触发在Windows本地解压功能编写解压缩工具。 然后从您的批处理文件内管出来的脚本,然后调用它。 然后,它作为独立的一样好。 我已经做到了,在过去的很多任务。 这样,它不要求需要的第三方应用程序,只是一个批处理文件,做一切。

我把我对如何使用批处理文件解压缩文件的博客例如 :

' j_unzip.vbs
'
' UnZip a file script
'
' By Justin Godden 2010
'
' It's a mess, I know!!!
'

' Dim ArgObj, var1, var2
Set ArgObj = WScript.Arguments

If (Wscript.Arguments.Count > 0) Then
 var1 = ArgObj(0)
Else
 var1 = ""
End if

If var1 = "" then
 strFileZIP = "example.zip"
Else
 strFileZIP = var1
End if

'The location of the zip file.
REM Set WshShell = CreateObject("Wscript.Shell")
REM CurDir = WshShell.ExpandEnvironmentStrings("%%cd%%")
Dim sCurPath
sCurPath = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
strZipFile = sCurPath & "\" & strFileZIP
'The folder the contents should be extracted to.
outFolder = sCurPath & "\"

 WScript.Echo ( "Extracting file " & strFileZIP)

Set objShell = CreateObject( "Shell.Application" )
Set objSource = objShell.NameSpace(strZipFile).Items()
Set objTarget = objShell.NameSpace(outFolder)
intOptions = 256
objTarget.CopyHere objSource, intOptions

 WScript.Echo ( "Extracted." )

' This bit is for testing purposes
REM Dim MyVar
REM MyVar = MsgBox ( strZipFile, 65, "MsgBox Example"

使用这样的:

cscript //B j_unzip.vbs zip_file_name_goes_here.zip


Answer 4:

的7-Zip ,它是开源,自由和支持多种格式。

7z.exe x myarchive.zip


Answer 5:

至于其他已经提到,7-Zip是巨大的。

注意:我要压缩和解压,然后一个文件。 解压缩是在底部。

我的贡献:

获取

7-Zip的命令行版本

当前网址

http://www.7-zip.org/download.html

语法?

你可以把下列.bat文件

"C:\Program Files\7-Zip\7z.exe" a MySuperCoolZipFile.zip "C:\MyFiles\*.jpg" -pmypassword -r -w"C:\MyFiles\" -mem=AES256

我已经展示了几种选择。

-r是递归的。 通常你想带拉链的功能是什么。

一个是“档案”。 这是输出zip文件的名称。

-p为密码(可选)

-w是一个源目录。 这将嵌套文件正确的zip文件,而无需额外的文件夹信息。

-MEM是加密强度。

还有其他的。 但是,上述将让你在运行。

注意:添加一个密码将使zip文件不友好的,当涉及到通过Windows资源管理器查看该文件。 客户可能需要自己的7-ZIP(或WinZip或其他)的副本,以查看该文件的内容。

编辑::::::::::: :(只是额外的东西)。

有一个“命令行”版本,这可能是更适合此: http://www.7-zip.org/download.html

(电流(在写作时)直接链接) http://sourceforge.net/projects/sevenzip/files/7-Zip/9.20/7za920.zip/download

所以zip命令将(与7 zip工具的命令行版本)。

"C:\WhereIUnzippedCommandLineStuff\7za.exe" a MySuperCoolZipFile.zip "C:\MyFiles\*.jpg" -pmypassword -r -w"C:\MyFiles\" -mem=AES256

现在解压部分 :(解压刚才创建的文件)

"C:\WhereIUnzippedCommandLineStuff\7zipCommandLine\7za.exe" e MySuperCoolZipFile.zip "*.*" -oC:\SomeOtherFolder\MyUnzippedFolder -pmypassword -y -r

文档在这里:

http://sevenzip.sourceforge.jp/chm/cmdline/commands/extract.htm



Answer 6:

谢谢你的钱,我会注意到这一点。 因此,这里是我自己的解决方案的脚本。 它不需要第三方解压缩工具。

包括批处理文件的开头下面的脚本来创建函数,然后调用函数,命令... cscript /B j_unzip.vbs zip_file_name_goes_here.zip

这里是脚本添加到顶部...

REM Changing working folder back to current directory for Vista & 7 compatibility
%~d0
CD %~dp0
REM Folder changed

REM This script upzip's files...

    > j_unzip.vbs ECHO '
    >> j_unzip.vbs ECHO ' UnZip a file script
    >> j_unzip.vbs ECHO '
    >> j_unzip.vbs ECHO ' It's a mess, I know!!!
    >> j_unzip.vbs ECHO '
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO ' Dim ArgObj, var1, var2
    >> j_unzip.vbs ECHO Set ArgObj = WScript.Arguments
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO If (Wscript.Arguments.Count ^> 0) Then
    >> j_unzip.vbs ECHO. var1 = ArgObj(0)
    >> j_unzip.vbs ECHO Else
    >> j_unzip.vbs ECHO. var1 = ""
    >> j_unzip.vbs ECHO End if
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO If var1 = "" then
    >> j_unzip.vbs ECHO. strFileZIP = "example.zip"
    >> j_unzip.vbs ECHO Else
    >> j_unzip.vbs ECHO. strFileZIP = var1
    >> j_unzip.vbs ECHO End if
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO 'The location of the zip file.
    >> j_unzip.vbs ECHO REM Set WshShell = CreateObject("Wscript.Shell")
    >> j_unzip.vbs ECHO REM CurDir = WshShell.ExpandEnvironmentStrings("%%cd%%")
    >> j_unzip.vbs ECHO Dim sCurPath
    >> j_unzip.vbs ECHO sCurPath = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
    >> j_unzip.vbs ECHO strZipFile = sCurPath ^& "\" ^& strFileZIP
    >> j_unzip.vbs ECHO 'The folder the contents should be extracted to.
    >> j_unzip.vbs ECHO outFolder = sCurPath ^& "\"
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO. WScript.Echo ( "Extracting file " ^& strFileZIP)
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO Set objShell = CreateObject( "Shell.Application" )
    >> j_unzip.vbs ECHO Set objSource = objShell.NameSpace(strZipFile).Items()
    >> j_unzip.vbs ECHO Set objTarget = objShell.NameSpace(outFolder)
    >> j_unzip.vbs ECHO intOptions = 256
    >> j_unzip.vbs ECHO objTarget.CopyHere objSource, intOptions
    >> j_unzip.vbs ECHO.
    >> j_unzip.vbs ECHO. WScript.Echo ( "Extracted." )
    >> j_unzip.vbs ECHO.


Answer 7:

这里是做好对物品的内置使用VBScript的Windows .ZIP文件处理在这里:

https://www.aspfree.com/c/a/Windows-Scripting/Compressed-Folders-in-WSH/

(最后的代码Blurb的与拔除)



Answer 8:

抓斗从可执行信息拉链 。

信息-ZIP支持从微型计算机硬件一路攀升到Cray超级,运行在Unix,VMS,OS / 2,视窗9x / NT /等几乎所有版本。 (又名的Win32)的,Windows 3.x,Windows CE上,MS-DOS,AmigaDOS,Atari的TOS,橡子的RISC OS,BeOS的,Mac OS中,SMS / QDOS,MVS和OS / 390 OE,VM / CMS,FLEXOS,串联NSK和Human68K(日语)。 还为LynxOS的一些(旧)的支持,TOPS-20,AOS / VS和Novell的NLM。 共享库(DLL)可用于Unix的,OS / 2,Win32和Win16的,和图形接口可用于Win32中,Win16的,WinCE的和Mac OS。



Answer 9:

本来ZIP文件是从PKWARE MS-DOS命令行软件创建的,这两个方案都PKZIP.EXE和PKUNZIP.EXE。 我想你仍然可以下载PKUNZIP在PKWARE网站在这里:

http://www.pkware.com/software-pkzip/dos-compression

实际的命令行可能会是这个样子:

C:\>pkunzip c:\myzipfile.zip c:\extracttothisfolder\


Answer 10:

下面的代码复制到一个批处理文件并执行。 下面需要的Winzip要安装/从你的机器访问。 不要改变变量根据自己的需要。

@ECHO OFF
SET winzip_path="C:\Program Files\WinZip"
SET source_path="C:\Test"
SET output_path="C:\Output\"
SET log_file="C:\Test\unzip_log.txt"
SET file_name="*.zip"

cd %source_path%
echo Executing for %source_path% > %log_file%

FOR /f "tokens=*" %%G IN ('dir %file_name% /b') DO (
echo Processing : %%G
echo File_Name : %%G >> %log_file%
%winzip_path%\WINZIP32.EXE -e %%G %output_path%
)

PAUSE


文章来源: How to unzip a file using the command line? [closed]
标签: zip cmd