2010-05-21 89 views
5

我想寫一個腳本,我可以給用戶讓它自動壓縮某些文件,然後將它們加載到一個FTP站點。任何人都知道在哪裏可以找到關於編寫批處理文件用於自動壓縮文件的信息,僅使用運行Windows的用戶可用的文件。如何僅使用內建的內容(批處理腳本,資源管理器等)在Windows上壓縮文件?

+2

可能重複在ZIP壓縮是腳本?](http://stackoverflow.com/questions/30211/can-windows-built-in-zip-compression-be-scripted) – 2012-08-28 21:48:52

+0

[here](http://stackoverflow.com/questions/28043589)你可以在windows中找到一個本地壓縮實用程序 – npocmaka 2015-02-04 11:09:37

回答

-1

批處理文件的一個更好的替代方法是使用JAR並使用Java的java.util.zip包壓縮文件。或者如何使用JAR分發bat文件。人們可以執行BAT文件,然後它可以運行JAR。

+8

如果使用外部工具是要走的路,爲什麼th你會選擇Java嗎?有很多小的命令行應用程序可以創建zip文件 – Anders 2010-05-22 12:58:14

+0

這也可以是一種替代方案。這完全取決於情況所需。 – User 2010-05-23 15:39:36

+1

談論overkill – 2017-09-05 02:24:55

0

由於(AFAIK)Windows沒有附帶可從命令行壓縮文件的程序。對於這個問題,它沒有附帶一個腳本化的ftp程序,(有一個ftp命令,但它是交互式的)。

最好的辦法是用一些編譯語言編寫一個程序,以訪問用於壓縮文件和ftp的庫。

+1

ftp -s:scriptfile主機名;) – Anders 2010-05-21 15:24:09

0

多個論壇(我無法找到官方的微軟答案)建議Windows內置的zip功能是由沒有命令行參數的dll提供的。例如:

拉開拉鍊是 zipfldr.dll的功能,所以會regsvr32.exe的使用 調用它,而據我所知 有沒有arguements您可以添加到 它解壓縮通過批處理文件。

- 從technologyquestions.com

我推薦一個第三方程序,其中有許多(你可以提供連同腳本):7zipwinzippkzip

您也可以查看VBScriptWSH作爲批處理文件的替代品。

1

可以使用壓縮文件夾(COM)支持和Windows腳本宿主來處理zip文件。您將從創建Shell.Application對象開始。 FolderItem對象具有CopyHere等方法,可以讓您像操作文件夾一樣操縱zip文件。請參閱this page以獲取zip並解壓縮示例代碼。

-1

Windows有它自己的zip命令。 您可以將下面的代碼放在backup.bat文件中並運行。

@echo off 
:: variables 
set drive=E:\backup 
set backupcmd=xcopy /s /c /d /e /h /i /r /y 

echo ### Backing up My Documents... 
%backupcmd% "e:\Repositories" "%drive%\SVNrepository\Repositories" 



e: 
cd "%drive%\SVNrepository" 

zip -r -S -T -$ -m Repositories.zip Repositories 


set filename="..\Repository_bak_%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%.zip" 
move .\*.zip %filename% 
cd E:\backup\ 

echo Backup Complete! 
rem @pause 
+7

我正在使用Windows 8並且在我的命令提示符下「zip」不是有效的命令。 – seagull 2015-04-17 12:36:43

+1

zip在Windows 7中不是有效的命令 – 2017-09-05 02:26:45

-1

通過[email protected]

如果你想轉換一個文件到一個ZIP文件中,你可以使用gzip.exe

[可在Windows'內置的
+0

gzip在Windows上不是本機的 – 2017-09-05 02:33:41

相關問題