红联Linux门户
Linux帮助

使用sftp+at自动定时一次上传下载数据

发布时间:2016-03-15 10:16:27来源:linux网站作者:szy8706@yeah

在公司白天都需要工作,为了不影响占用公司同事及服务器流量,我将使用sftp+at自动定时一次上传下载数据,这样就非常方便了,也想过用crontab之后还是使用at方便。


1.服务端和客户端安装openssh

#yum -y install openssh


2.客户端安装at和lftp

#yum -y install at


3.客户端编写sftpauto.sh脚本

#vi sftpauto.sh
HOST=192.168.19.128    //服务端IP以及下面用户和密码

USER=root

PASS=clickcoo

echo "Starting to sftp ...."

lftp -u ${USER},${PASS} sftp://${HOST}<<EOF

cd /data/res/     //指定服务端需要下载文件的目录

mget *.tar     //这里可以改成mput上传,使用lftp登录再通过按table键查看所有命令

bye

EOF

echo "ok,bye!"

#chmod +x sftpauto.sh  //可执行


4.客户端使用at定时一次执行

#date   // 查看当前时间

Tue Dec 16 18:28:03 CST 2015

#at -f /root/sftpauto.sh  18:30 today

以下是例子

#at -f /root/sftpauto.sh  18:30 tomorrow  //明天执行

#at -f /root/sftpauto.sh  4pm + 3 days    //三天后下午4点执行

#at -f /root/sftpauto.sh  10am Jul 31     //在7月31日上午10点执行

#at -l  查看等待执行的命令

注意:mget只下载文件或mput只上传文件,无法下载或上传文件夹/目录。


本文永久更新地址:http://www.linuxdiyf.com/linux/18939.html