#!/bin/bash
today=$(date +%Y%m%d)
#备份到远程机器的路径(通过ftp)
backuppath=/usr/local/webapps/tftp
#本地备份的文件路径
backupfilepath=/usr/local/webapps
#备份后的文件名称
filename=backup_$today.tar.gz
ftpserver=172.19.8.50
cd $backupfilepath
#判断用户的ID号(root用户)
if [ $UID == 0 ]; then
#查找在系统中最后24*8小时里修改过的文件并删除
find $backuppath -type f -name "*.xml" -mtime 8 | xargs rm -rf
find $backupfilepath -type f -name "backup_*.tar.gz" -mtime 8 | xargs rm -rf
if [ -e $filename ]; then
#删除最近一次打包过的文件
rm -f $filenmae && tar -czvPf backup_$today.tar.gz $backuppath
else
tar -czvPf backup_$today.tar.gz $backuppath
fi
while [ -e $filename ]
do
ftp -v -n $ftpserver << END
user "username" password
binary
hash
cd /backup/
#默认情况下,每上传一个文件都输入一下y来确认
#关闭交互模式,再次使用此命令则是打开操作
prompt
mput $filename
bye
END
exit
done
else
echo "please run as root!"
fi