现在的位置: 首页 > 综合 > 正文

利用ftp定时上传log到其他服务器

2013年12月14日 ⁄ 综合 ⁄ 共 646字 ⁄ 字号 评论关闭

#!/bin/bash
#时间的生成
Y=` date --date="-1 hour" +%Y`
m=` date --date="-1 hour" +%m`
d=`date --date="-1 hour" +%d`
H=`date --date="-1 hour" +%H`

#ip地址的获取
IP="`/sbin/ifconfig |grep 'Bcast'|awk -F '[ :]' '{print $13}'`"

#log名字的生成(随时间和ip不同而不同)
LOG_NAME="access-$H-$IP.log"

#FTP服务器地址
HOST="10.10.10.170"
#FTP服务器用户名
USER="user"
#FTP服务器密码
PASS="passwd"

#循环上传不同项目的日志文件
for ROUTE_NAME in "www_log" "h_log" "lpt_log" "c_log" ;do
        LCD="/usr/local/nginx/logs/$ROUTE_NAME/$Y/$m/$d"
        RCD="/$ROUTE_NAME/$Y/$m/$d"
        if [ -f $LCD/$LOG_NAME ] ;then
           lftp << EOF
           open ftp://$USER:$PASS@$HOST
           lcd $LCD
           mkdir -p $RCD
           cd $RCD
           put -c $LOG_NAME
           bye
EOF
     else
         echo "log文件不存在!"
     fi
done;
~        

抱歉!评论已关闭.