|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2006-06-10, 09:02 PM | #1 |
榮譽會員
|
軟體 - 一個簡單備份腳本,(自動產生按年-月-日-時-分-秒的rar壓縮包裝)
使用這個腳本需要安裝,winrar。
winrar.exe 需要複製到系統目錄(或者新增路徑),本想用指定安裝目錄的,但自己用直接放到windos\system32算了。如果需要自動備份,請自行新增到計劃任務即可。 1.lst 文件是需要備份的目錄列表,需要自己手動編輯。 c:\1\*.* c:\2\*.* c:\a\*.* 解壓縮後,把bak.vbs放到備份目錄(如:E:\bak目錄裡)執行即可,會自動在目錄裡產生 年-月-日-時-分-秒的rar壓縮包裝(如:2006-06-10.18.37'56.rar)月、日、小時、分、秒是1位數的會新增0在前面。我用計劃任務執行這個腳本,可以自行設置執行時間。本來這個腳本還想加入定時刪除1-N天的備份文件的,懶得做了,反正我備份的東西不大,一個月刪除一次即可。 代碼: Dim MyDate,myhour,mymin,mysecond MyDate = Date Myhour = hour(Now) Mymin = Minute(Now) Mysecond =Second(time) If Len(myhour) = 1 Then myhour = "0" & myhour End If If Len(Mymin) = 1 Then Mymin = "0" & Mymin End If If Len(Mysecond) = 1 Then Mysecond = "0" & Mysecond End If Set WshShell = Wscript.CreateObject("Wscript.Shell") WshShell.Run ("winrar a "&mydate&"."&myhour&"."&mymin&"'"&Mysecond&".rar @1.lst") WshShell.Run ("winrar a "&mydate&"."&myhour&"."&mymin&"'"&Mysecond&".rar @1.lst") winrar 這裡還可以自己加入winrar的命令行參數,設置壓縮參數等等,請自行參考winrar的命令行參數的幫助。 引用: 開關 -M<n> - 設置壓縮方式 -m0 存儲 新增文件到壓縮文件但是不壓縮 -m1 最快 最快速的方法 (最低的壓縮比) -m2 快速 快速壓縮方法 -m3 標準 標準 (預定) 壓縮方法 -m4 較好 較好的壓縮方法 (較高的壓縮比) -m5 最優 最優的壓縮方法 (最高壓縮比但是速度也最慢) 開關 -MD<n> - 選擇字典大小 此開關允許以 <n> Kb 來 選擇字典大小。<n> 必須是 64、128、256、512、1024、2048、4096 或對應字母「a」、「b」、「c」、「d」、「e」 、「f」、「g」。WinRAR 中預定的可變字典大小是 4096 KB。 可變字典,是供壓縮運算法使用的特殊記憶體區域。如果正在壓縮的 (或在固實壓縮文件,總計文件大小的例子) 文件大小比字典還大,此時增加字典大小通常會增加壓縮比,降低壓縮的速度,和增加記憶體需求。 和壓縮不一樣,解壓速度與字典大小無關。 如果字典的大小大於源資料的大小,WinRAR 能減少它。這對減少記憶體的需求同時不降低壓縮率有幫助。 ZIP 壓縮文件始終會使用 32Kb 的字典來創建。因為 ZIP 格式的限制,所以比較大的數值無法使用。 字典大小也可以通過 高階壓縮參數 交談視窗的「字典大小」列表來做選擇。 開關 -P<密碼> - 設置密碼 在壓縮或解壓加密的壓縮文件期間,設置密碼 <密碼> 給 加密 的文件。密碼的大小寫必須匹配。在命令行時,如果你省略了密碼,你將會被提示輸入它。 在界面模式,密碼也可以經由 輸入預定密碼 交談視窗或在 壓縮文件名和參數 交談視窗輸入。 例子: 使用密碼 ZaBaToAd 來將資料夾「games」的內容新增到壓縮文件「secret」。 WinRAR a -pZaBaToAd -r secret games\*.* |
__________________ |
|
送花文章: 3,
|
2006-06-10, 09:04 PM | #2 (permalink) |
榮譽會員
|
補充一刪除7天前備份文件的腳本,新增到計劃任務即可。
需要自行手動修改目錄,修改E:\bak為你所需要刪除的目錄,需要刪除多個目錄下的,自己新增。 引用: [抄襲+改進]刪除指定目錄下的過期文件,(多目錄可定義版本) 代碼: Dim d,fso,files,file '聲明變數名(不做也可以) Set d = CreateObject("Scripting.Dictionary") d.Add "0", "E:\bak" '把目錄路徑新增到d這個數組中,0,1是數組的索引(index) 'd.Add "1", "E:\bbs_bak\91_adsys" For Each i in d Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder(d.Item(i)) Set Files = Folder.Files If Files.Count <> 0 Then For Each File In Files If File.DateLastModified < Now - 7 Then '判斷是否超過7天 FSO.DeleteFile(file) 'Wscript.Echo file End If Next End If Next |
送花文章: 3,
|