您的位置:首页 > 运维架构 > Linux

Linux 下FTP定时执行批量下载文件

2017-04-11 22:24 806 查看
使用FTP定时批量下载指定文件的shell脚本

环境:centos6.9

1、目标FTP服务器地址

#FTP服务器地址

ip=10.19.15.23

2、FTP账号和密码

u=账号

p=密码

3、使用mget结合正则表达式下载文件

#获取昨天日期,为后面下载使用

T=`date -d yesterday +%Y%m%d` 

4、连接FTP服务器,到指定路径下下载文件

 ftp -n  <<EOF

           open $ip

           user $u $p

           binary

           cd /hour                               #远程服务器文件目录

           lcd /home/Comparisor/XN_data/hour      #本地存放的文件目录

           hash  

           prompt off                             #关闭交互

           mget *$T*

           cd ../day                              #远程服务器文件目录

           mget *$T*

           close                              

           bye

EOF

5、将脚本加入定时任务crontab,每天6点执行。

使用crontab -e 编辑保存:

0  6  *  *  *  /home/XXXX/get_xn_data.sh  #后面跟脚本的绝对路径

重启定时任务

/bin/systemctl restart  crond.service

6 、完整的脚本为:

#!/bin/bash

#获取性能系统小时粒度的指标数据

u=账号

p=密码

ip=10.195.15.23

T=`date -d yesterday +%Y%m%d`                        #获取日期,根据日期抓取xdr文件

#写入日志

echo "(`date`) get data start...." >> /home/XXX/getdata.log

echo "==================================================="  >> /homeXXX/getdata.log

        ftp -n  <<EOF

           open $ip

           user $u $p

           binary

           cd /hour                       #远程服务器文件目录

           lcd /home/Comparisor/XN_data/hour      #本地存放的文件目录

           hash  

           prompt off

           mget *$T*

           cd ../day

           mget *$T*

           close

           bye

EOF
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息