基於時間戳的檔案備份指令碼
#!/bin/bash
images()
{
SPATH2=/root/tomcat/
DPATH2=/home/databack/tomcat
REMOTEHOST=10.90.2.67
TODAY_TIME=$(date +%F)
scp -p -r $REMOTEHOST:$SPATH2/images $DPATH2 > /dev/null 2>&1
#利用時間戳檔案判斷是全備還是增量備份
if [ ! -f /root/time/timeimages.key ];then
#建立時間戳檔案,備份全部圖片
images()
{
SPATH2=/root/tomcat/
DPATH2=/home/databack/tomcat
REMOTEHOST=10.90.2.67
TODAY_TIME=$(date +%F)
scp -p -r $REMOTEHOST:$SPATH2/images $DPATH2 > /dev/null 2>&1
#利用時間戳檔案判斷是全備還是增量備份
if [ ! -f /root/time/timeimages.key ];then
#建立時間戳檔案,備份全部圖片
touch /root/time/timeimages.key
cd $DPATH2/images
#查詢所有非目錄檔案
find ./ ! -type d >file.list
mkdir $DPATH2/full_$TODAY_TIME
#從file.list中讀取檔名並打包,再解包到指定目錄下
tar -T file.list -c |tar -x -C $DPATH2/full_$TODAY_TIME
sed -i "s/$/$TODAY_TIME/" file.list
else
cd $DPATH2/images
#查詢自最近一次全備以來的所有非目錄文件,進行一次增量備份
find ./ -newer /root/time/timeimages.key ! -type d > file.list.tmp
mkdir $DPATH2/$TODAY_TIME
tar -c -T file.list.tmp |tar -x -C $DPATH2/$TODAY_TIME
fi
#刪除臨時檔案
rm -rf $DPATH2/images
}
#==========================================
images
cd $DPATH2/images
#查詢所有非目錄檔案
find ./ ! -type d >file.list
mkdir $DPATH2/full_$TODAY_TIME
#從file.list中讀取檔名並打包,再解包到指定目錄下
tar -T file.list -c |tar -x -C $DPATH2/full_$TODAY_TIME
sed -i "s/$/$TODAY_TIME/" file.list
else
cd $DPATH2/images
#查詢自最近一次全備以來的所有非目錄文件,進行一次增量備份
find ./ -newer /root/time/timeimages.key ! -type d > file.list.tmp
mkdir $DPATH2/$TODAY_TIME
tar -c -T file.list.tmp |tar -x -C $DPATH2/$TODAY_TIME
fi
#刪除臨時檔案
rm -rf $DPATH2/images
}
#==========================================
images
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27181165/viewspace-775752/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 基於表空間的熱備份指令碼指令碼
- RMAN相容性、控制檔案自動備份、儲存時間、備份策略、備份指令碼(二)指令碼
- RMAN備份格式%t時間戳計算時間戳
- shell 備份檔案指令碼+自動清理指令碼
- 【備份恢復】閃回資料庫(三)基於時間戳閃回資料庫資料庫時間戳
- 引用js、css檔案時加時間戳JSCSS時間戳
- 【EXP】在備份檔案上留下“時間烙印”
- 基於時間戳閃回資料庫時間戳資料庫
- oracle10g_備份控制檔案_得到重建控制檔案的指令碼Oracle指令碼
- 使用TSM備份30天前生成的檔案的指令碼指令碼
- 基於Linux指令碼,對日誌進行定時壓縮備份Linux指令碼
- ORACLE常用定時備份指令碼Oracle指令碼
- mysql每天定時備份指令碼MySql指令碼
- oracle rman 定時備份指令碼Oracle指令碼
- mysql定時備份shell指令碼MySql指令碼
- RMAN定時全備份指令碼指令碼
- linux之touch命令修改檔案的時間戳Linux時間戳
- rman的全備份指令碼和控制檔案安全策略指令碼
- 如何為Oracle匯出檔案加上時間戳Oracle時間戳
- Linux ftp 自動上傳備份檔案指令碼LinuxFTP指令碼
- 備份指令碼指令碼
- Mysql定時備份資料指令碼MySql指令碼
- RMAN基於備份控制檔案恢復失敗
- RMAN備份歸檔日誌指令碼指令碼
- 【shell 指令碼】備份最後一天所有修改的檔案指令碼
- EXP的備份指令碼指令碼
- windows建exp備份指令碼時的小插曲Windows指令碼
- 基於歸檔的冷備份恢復
- Linux系統配置檔案簡易shell備份指令碼Linux指令碼
- 網站資料定時備份指令碼分享 (保留最近的30份備份資料)網站指令碼
- Oracle用指令碼定時執行備份Oracle指令碼
- javascript時間戳與php返回的時間戳統一JavaScript時間戳PHP
- rman備份和增量備份指令碼指令碼
- 基於資料庫的熱備指令碼資料庫指令碼
- ORACLE備份指令碼Oracle指令碼
- mysqldump 備份指令碼MySql指令碼
- rman 備份指令碼指令碼
- mysqldump備份指令碼MySql指令碼