一段shell 指令碼
/bin/bash
conffile=/usr/local/sbin/cvsback.conf
logfile=/usr/local/sbin/cvsback.log
tmppath=/tmp
srcok=1
today=`date +%Y%m%d`
for item in `cat $conffile |grep -v ^#|sed "/^$/d"`
do
# echo $item
date +%Y%m%d-%H:%M:%S >> $logfile
src=`echo $item|cut -d":" -f1`
desthost=`echo $item|cut -d":" -f2`
destpath=`echo $item|cut -d":" -f3`
#echo $src
#echo $desthost
#echo $destpath
if [ -d $src ]
then
echo "src ok,it is a directory"|/usr/bin/tee -a $logfile
srcok=0
elif [ -f $src ]
then
echo "src ok,it is a file"|/usr/bin/tee -a $logfile
srcok=0
else
echo "$src not exist"|/usr/bin/tee -a $logfile
continue
fi
echo -n "backup $src..."|/usr/bin/tee -a $logfile
bfname=$tmppath/`basename $src`-$today.tgz
#echo $bfname
tar czf $bfname $src >> $logfile 2>> $logfile
if [ $? -eq 0 ]
then
echo "done"|/usr/bin/tee -a $logfile
scp $bfname root@$desthost:$destpath/
if [ $? -eq 0 ]
then
rm -f $bfname
fi
fi
ssh 21.17.98.2 "[ $destpath/`basename $src`-`date -d'7days ago' +%Y%m%d`.tgz ]" > /dev/null 2> /dev/null
if [ $? -eq 0 ]
then
ssh 11.17.98.7 "rm -f $destpath/`basename $src`-`date -d'7days ago' +%Y%m%d`.tgz"
fi
done
conffile=/usr/local/sbin/cvsback.conf
logfile=/usr/local/sbin/cvsback.log
tmppath=/tmp
srcok=1
today=`date +%Y%m%d`
for item in `cat $conffile |grep -v ^#|sed "/^$/d"`
do
# echo $item
date +%Y%m%d-%H:%M:%S >> $logfile
src=`echo $item|cut -d":" -f1`
desthost=`echo $item|cut -d":" -f2`
destpath=`echo $item|cut -d":" -f3`
#echo $src
#echo $desthost
#echo $destpath
if [ -d $src ]
then
echo "src ok,it is a directory"|/usr/bin/tee -a $logfile
srcok=0
elif [ -f $src ]
then
echo "src ok,it is a file"|/usr/bin/tee -a $logfile
srcok=0
else
echo "$src not exist"|/usr/bin/tee -a $logfile
continue
fi
echo -n "backup $src..."|/usr/bin/tee -a $logfile
bfname=$tmppath/`basename $src`-$today.tgz
#echo $bfname
tar czf $bfname $src >> $logfile 2>> $logfile
if [ $? -eq 0 ]
then
echo "done"|/usr/bin/tee -a $logfile
scp $bfname root@$desthost:$destpath/
if [ $? -eq 0 ]
then
rm -f $bfname
fi
fi
ssh 21.17.98.2 "[ $destpath/`basename $src`-`date -d'7days ago' +%Y%m%d`.tgz ]" > /dev/null 2> /dev/null
if [ $? -eq 0 ]
then
ssh 11.17.98.7 "rm -f $destpath/`basename $src`-`date -d'7days ago' +%Y%m%d`.tgz"
fi
done
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-609497/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- shell指令碼指令碼
- [Shell] Shell 生成 HTML指令碼HTML指令碼
- shell指令碼(二)指令碼
- shell指令碼心得指令碼
- shell指令碼案例指令碼
- 常用shell指令碼指令碼
- 巧用shell指令碼生成快捷指令碼指令碼
- shell指令碼(6)-shell陣列指令碼陣列
- 如何加密shell指令碼加密指令碼
- 初識shell指令碼指令碼
- 執行shell指令碼指令碼
- Shell 指令碼語句指令碼
- shell 指令碼加密 | shc指令碼加密
- Linux Shell指令碼Linux指令碼
- shell指令碼例項指令碼
- 【指令碼】shell語法指令碼
- shell指令碼舉例指令碼
- Shell指令碼基礎指令碼
- Linux shell 指令碼Linux指令碼
- Shell 指令碼編寫指令碼
- shell指令碼總結指令碼
- shell 指令碼寫法:指令碼
- iOS逆向 Shell指令碼+指令碼重簽名iOS指令碼
- Shell指令碼匯入外部指令碼內容指令碼
- shell入門--第一個shell指令碼指令碼
- 9、在Shell指令碼中呼叫其他指令碼指令碼
- shell指令碼:一鍵安裝LAMP、LNMP指令碼指令碼LAMPLNMP
- Shell指令碼最佳實踐指令碼
- Shell指令碼應用(三)指令碼
- shell指令碼——基本運算子指令碼
- 如何讓shell指令碼自殺指令碼
- shell指令碼例項(2)指令碼
- crontab執行shell指令碼指令碼
- Linux shell 指令碼分享Linux指令碼
- 【shell】日誌切割指令碼指令碼
- (1) Shell 指令碼簡介指令碼
- 快速建立分支Shell指令碼指令碼
- LNMP安裝shell指令碼LNMP指令碼