使用windows內建的命令進行檔案或檔案夾的壓縮

來源:互聯網
上載者:User

系統內容:

需求:因為是作為伺服器端的,不想安裝任何第三方軟體,所以決定使用windows內建的命令進行檔案或檔案夾的壓縮

解決過程:

通常我們使用C:\Documents and Settings\root\SendTo\壓縮(zipped)檔案夾這個功能進行壓縮,但是可以查看這個僅僅是 Explorer shell command,具體解釋可以查看原文連結

因為不是一個可執行程式,所以我們無法通過在cmd中直接調用,貌似無法進展了

既然無法直接調用,那我們可以通過間接調用,通過VSB指令碼調用COM介面從而調用內建的zip,因為SCript.exe從Windows98開始就預設安裝了。有了思路就開始解決吧

編寫VBS指令碼,zip.vbs

Set objArgs = WScript.ArgumentsZipFile = objArgs(0)' Create empty ZIP file and open for addingCreateObject("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 fileFor 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.txtset TAR=d:\tar.zipecho 'begin zip files'cscript d:\zip.vbs %TAR% %SRC%echo 'success'pause

參考連結:

windows內建zip說明    http://filext.com/faq/compressed_zip_folder.php

VBS指令碼    http://superuser.com/questions/110991/can-you-zip-a-file-from-the-command-prompt-using-only-windows-built-in-capabili

相關文章

Alibaba Cloud 10 Year Anniversary

With You, We are Shaping a Digital World, 2009-2019

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。