shell周期差量備份文件夾

shell腳本備份

創(chuàng)建備份腳本
backup.sh

#!/bin/sh 
#$# 參數(shù)個數(shù)
#提示說明
if [ $# -lt 3 ]; then
echo "=============================================="
echo "Usage:     $0 ( commands ... )"
  echo "commands:"
  echo "example:"
  echo "  > $0 bakDir bakAllName oriDirOrFile"
  echo " bakDir:備份文件件"
  echo " bakAllName:完整備份的名稱"
  echo " oriDirOrFile:源文件或者文件夾"
echo "=============================================="
  exit -1
fi
#將參數(shù)賦值給變量 = 兩邊不能有空格
bakdir="$1"
bakName="$2"
bakAllName="$2.tar.gz"
oriDirOrFile="$3"
#保存天數(shù) 默認7天超過指定天數(shù)重新 全量備份
if [ -n $4 ];then
    bakDays=7
else
   bakDays=$4
fi

echo $bakAllName
echo $bakdir
#判斷全量備份文件是否存在
if [ ! -f "$bakdir$bakAllName" ];then
    #如果沒有全量備份份文件
    echo "--------all-bak---------"
    bakdir=$bakdir$bakAllName
    zl=""
else
    #已經(jīng)備份了全量
    #獲取全量備份的時間
    bakAllDate="`ls --full-time $bakdir$bakAllName |cut -d ' ' -f 6`"
    #獲取當前時間
    nowDate=`date "+%Y-%m-%d"`
    #算出時間差單位是秒
    senconds=$(($(date +%s -d $nowDate) - $(date +%s -d $bakAllDate)));
    #計算出天
    day=$(($senconds/60/60/24))
    #增量備份但是超過備份時間需要跟新全量的備份
    if [ $day -gt $bakDays ];then
        echo "備份時間已經(jīng)超過備份周期了"
        bakdir=$bakdir$bakAllName
    else
        echo "還沒超過備份周期"
        echo " temp-bak"
            #增量備份文件地址
            tempDir="$bakdir$bakName`date '+%m-%d'`.tar.gz"
            #獲取全量備份文件的日期
            compareDate="`ls --full-time $bakdir$bakAllName |cut -d ' ' -f 6`"
            echo "$compareDate"
            #獲取全量備份文件的時間
            compareTime="`ls --full-time $bakdir$bakAllName |cut -d ' ' -f 7`"
            echo "$comcompareTime"
            #shell 格式轉(zhuǎn)換成yyyy-MM-dd HH:mm:ss
            compareTime=`date -d $compareTime "+%F %T"`
            echo "$compareTime"
            #差量備份比較時間基準
            zl="-N "$compareTime""
            bakdir=$tempDir
    fi

fi
echo "--------start-bak---------"
echo $zl
echo "$bakdir"
#使用tar差量打壓縮包
tar "$zl" -czvf $bakdir  $oriDirOrFile

創(chuàng)建任務(wù)調(diào)度

創(chuàng)建可執(zhí)行文件

touch execBakUp.sh
chmod u+xrw execBakUp.sh

添加內(nèi)容

sh backup.sh /opt/bak/ tomcatTest /home/oriDir 5
/opt/bak/:你的備份需要放置的位置
tomcatTest:你的備份名稱
/home/oriDir:需要備份的文件夾
5:備份周期

編輯任務(wù)調(diào)度

crontab -e
秒 時 日 月 周
0 02 * * * sh /opt/execBakUp.sh >> $(date "+%Y-%m-%d".log)
每天凌晨 2點 執(zhí)行execBakUp.sh

說明

參數(shù)說明:

$#:添加的參數(shù)個數(shù)既鞠。
$1~$n:添加到Shell的各參數(shù)值
$0:Shell本身的文件名
$*$@:傳遞給腳本或函數(shù)的所有參數(shù)侥祭。

增量備份:

tar -cvzf text.tar.gz /bak -N i_time
i_time是時間點

獲取文件時間:

ls --full-time $bakdir$bakAllName |cut -d ' ' -f 6
ls --full-time text.txt:顯示文件完整時間
cut -d ' ' -f 6空格分隔 顯示第6列

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绷柒,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子馒吴,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丧靡,死亡現(xiàn)場離奇詭異,居然都是意外死亡籽暇,警方通過查閱死者的電腦和手機温治,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來戒悠,“玉大人熬荆,你說我怎么就攤上這事〕窈” “怎么了卤恳?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵累盗,是天一觀的道長。 經(jīng)常有香客問我突琳,道長若债,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任拆融,我火速辦了婚禮蠢琳,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘镜豹。我一直安慰自己傲须,他們只是感情好,可當我...
    茶點故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布逛艰。 她就那樣靜靜地躺著躏碳,像睡著了一般。 火紅的嫁衣襯著肌膚如雪散怖。 梳的紋絲不亂的頭發(fā)上菇绵,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天,我揣著相機與錄音镇眷,去河邊找鬼咬最。 笑死,一個胖子當著我的面吹牛欠动,可吹牛的內(nèi)容都是我干的永乌。 我是一名探鬼主播,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼具伍,長吁一口氣:“原來是場噩夢啊……” “哼翅雏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起人芽,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤望几,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后萤厅,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體橄抹,經(jīng)...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年惕味,在試婚紗的時候發(fā)現(xiàn)自己被綠了楼誓。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡名挥,死狀恐怖疟羹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤阁猜,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布丸逸,位于F島的核電站,受9級特大地震影響剃袍,放射性物質(zhì)發(fā)生泄漏黄刚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一民效、第九天 我趴在偏房一處隱蔽的房頂上張望憔维。 院中可真熱鬧,春花似錦畏邢、人聲如沸业扒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽程储。三九已至,卻和暖如春臂寝,著一層夾襖步出監(jiān)牢的瞬間章鲤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工咆贬, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留败徊,地道東北人。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓掏缎,卻偏偏與公主長得像皱蹦,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子眷蜈,可洞房花燭夜當晚...
    茶點故事閱讀 43,499評論 2 348