gtag

2010年8月24日 星期二

怎麼利用批次檔自動備份自己電腦的個人資料

在公司的電腦,常常會放很多工作上的資料,雖然公司有公用硬碟,不過這並不保險,我還是都會用隨身碟自已備一份當天的異動資料下來。


以下是備份時所用的BAT檔(藍色字為原始程式碼,紅色字為解說)

D:\DATA是筆者的個人資料夾
H:\是筆者的隨身碟目錄

@echo off
set _start=%time:~0,8% (計算整個備份時間)
FOR /F "tokens=1-4 delims=/ " %%a IN ("%date%") DO (
SET _MyDate=%%b-%%c-%%a
) (找出今天的日期,方便後面做複製時的檢查)
echo =======================================================
echo  Backup Messenger Config File(備份MSN的檔案,表情圖示等等 <user>部份要填入登入名稱)
echo =======================================================
xcopy "C:\Documents and Settings\<user>\Local Settings\Application Data\Microsoft\Messenger" H:\Messenger /y/s/e
echo =======================================================
echo  Backup Skype Config File
(備份SKYPE的聊天記錄,並先砍掉SKYPE的程序,方便進行複製 <user>部份要填入登入名稱)
echo =======================================================
taskkill /IM skype.exe /F
xcopy "C:\Documents and Settings\
<user>\Application Data\Skype" H:\Skype /y/s/e
echo =======================================================
echo  Backup tnsnames.ora File
(備份ORACLE 的tnsnames.ora,重裝容易,設定麻煩,還是備份好)
echo =======================================================
copy /Y C:\oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora D:\data\Database
echo =======================================================
echo  Backup hosts File
(備份hosts,筆者內部環境部份會使用到HOSTS的設定,還是備份好)
echo =======================================================
copy /Y C:\WINDOWS\system32\drivers\etc\hosts D:\data\SE_DATA
echo =======================================================
echo  Backup PuTTY info
(備份putty的主機列表,常會使用到PUTTY做連線,將已連線過的主機與IP備份)
echo =======================================================
regedit.exe /e D:\data\PuTTY.reg HKEY_CURRENT_USER\Software\SimonTatham
echo =======================================================
echo  Backup Sqlplus login.sql
(備份Sqlplus的初始設定)
echo =======================================================
copy /Y D:\oracle\product\10.2.0\client_1\sqlplus\admin\glogin.sql D:\data\Database
echo =======================================================
echo  COPY Files modified at %_MyDate% (複製今天異動過的資料檔案到H磁碟)
echo =======================================================
taskkill /IM outlook.exe /F
xcopy D:\data h:\data /d:%_MyDate% /y/s/e
echo =======================================================
echo  Backup My Favorites (備份我的最愛)
echo =======================================================
xcopy "C:\Documents and Settings\
<user>\Favorites" H:\Favorites /y/s/e
echo =======================================================
echo Backup Start time:%_start%
echo Backup End time  :%time:~0,8% (顯示備份所花的時間)
echo =======================================================
Pause

並設定在每天下班前自動做複製,例如:6:00 PM時,加入排定工作中,就萬無一失。

沒有留言:

張貼留言