admin 管理员组文章数量: 887006
需求:因为是作为服务器端的,不想安装任何第三方软件,所以决定使用windows自带的命令进行文件或文件夹的压缩
方法一:
打包单个文件:makecab src.txt tar.zip
解压单个文件:expand src.txt tar.zip
方法二:
解决过程:
通常我们使用C:\Documents and Settings\root\SendTo\压缩(zipped)文件夹这个功能进行压缩,但是可以查看这个仅仅是 Explorer shell command,具体解释可以查看原文链接
因为不是一个可执行程序,所以我们无法通过在cmd中直接调用,貌似无法进展了
既然无法直接调用,那我们可以通过间接调用,通过VSB脚本调用COM接口从而调用自带的zip,因为SCript.exe从Windows98开始就默认安装了。有了思路就开始解决吧
编写VBS脚本,zip.vbs
Set objArgs = WScript.Arguments
ZipFile = objArgs(0)
' Create empty ZIP file and open for adding
CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
Set zip = CreateObject("Shell.Application").NameSpace(ZipFile)
' Add all files/directories to the .zip file
For i = 1 To objArgs.count-1
zip.CopyHere(objArgs(i))
WScript.Sleep 10000 'REQUIRED!! (Depending on file/dir size)
Next
调用脚本
cscript zip.vbs target.zip sourceFile1 sourceDir2
实例:
当然如果你更懒的话可以编写一个bat处理脚本直接写好需要压缩的文件双击运行即可
例如:zip.bat
set SRC=d:\src.txt
set TAR=d:\tar.zip
echo 'begin zip files'
cscript d:\zip.vbs %TAR% %SRC%
echo 'success'
pause
参考链接:
windows自带zip说明:http://filext/faq/compressed_zip_folder.php
VBS脚本:http://superuser/questions/110991/can-you-zip-a-file-from-the-command-prompt-using-only-windows-built-in-capabili
版权声明:本文标题:使用windows自带的命令进行文件或文件夹的压缩 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1733398776h1585754.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论