透過批次指令執行壓縮、備份工作
想要透過腳本程式或批次檔,定期將指定目錄底下的每個檔案,壓製成獨立的壓縮檔,以下提供幾種方法供大家參考。
A.怎麼樣透過腳本程式或批次檔,定期將指定目錄底下的每個檔案,壓製成獨立的壓縮檔?
程式碼(因篇幅限制,完整程式碼請參考網站原文)的功能如下,一些修改程序應該就能滿足你的需求:
1.壓縮指定資料夾下的所有子資料夾下的檔案,只限一層。
2.指定資料夾下的檔案並不會壓縮,可依你的需求自行修改。
3.檔案大於5K才壓縮,可依你的需求自行設定。
4.複製的目的地資料夾必須存在,會依來源資料夾\子資料夾,建立相同的子資料夾。
5.壓縮檔案成功後,會刪除原始檔,如果不想刪檔,請移除22~24行的指令敘述。
6.壓縮檔案搬移到目的地資料夾。
******************************************************************:
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」。
******************************************************************
我都是用下列程式備份每日的資料。假設備份資料是「我的最愛」:
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