透過批次指令執行壓縮、備份工作
到iT邦幫忙

ericshn(IT邦初學者10級)發問:
怎麼樣透過腳本程式或批次檔,定期將指定目錄底下的每個檔案,壓製成獨立的壓縮檔?

jsperng(IT邦初學者4級):
程式碼(因篇幅限制,完整程式碼請參考網站原文)的功能如下,一些修改程序應該就能滿足你的需求:

1.壓縮指定資料夾下的所有子資料夾下的檔案,只限一層。

2.指定資料夾下的檔案並不會壓縮,可依你的需求自行修改。

3.檔案大於5K才壓縮,可依你的需求自行設定。

4.複製的目的地資料夾必須存在,會依來源資料夾\子資料夾,建立相同的子資料夾。

5.壓縮檔案成功後,會刪除原始檔,如果不想刪檔,請移除22~24行的指令敘述。

6.壓縮檔案搬移到目的地資料夾。

antijava(IT邦初學者1級):
1.假設批次檔檔名為zzzzzzz.bat,內容如下:

CD %1
FOR %%I IN(*.*)DO 7z a -tzip "%%I.zip" "%%I"
CD %1
FOR %%I IN(*.*)DO 7z a -tzip "%%I.zip" "%%I"

2.執行方式如下:
zzzzzzz D:\Data\January

執行後他就會改變目錄到「D:\Data\January」之下,並將每一個檔案都用7Zip壓縮,如果原來有50個檔案,執行完成後就會有100個檔案(加了50個壓縮檔),而壓縮檔的名字是原來的檔案後面加上「.zip」。

allurlbt(IT邦初學者10級):
我都是用下列程式備份每日的資料。假設備份資料是「我的最愛」:

XCOPY "%userprofile%\Favorites" "d:\backup\Favorites" /D /H /I /S /Y

XCOPY "%userprofile%\Local Settings\Application Data\Google\Chrome\User Data\Default\Bookmarks" "d:\backup\ChromeBookmarks" /D /H /I /S /Y

熱門新聞

Advertisement