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

shell脚本进行sftp文件批量上传与下载

2017-12-19 18:10 489 查看
http://blog.csdn.net/u012204058/article/details/53160419

使用linux 的shell脚本进行sftp文件上传与下载

批量上传:

#!/bin/bash

#SFTP配置信息
#用户名
USER=root
#密码
PASSWORD=5EYS40T04BMF
#待上传文件根目录
SRCDIR=/u02/dab/sftpFiles
#FTP目录
DESDIR=/u01/sftpFiles
#IP
IP=192.168.10.11
#端口
PORT=22022

#获取文件
cd ${SRCDIR} ;
#目录下的所有文件
#FILES=`ls`
#修改时间在执行时间五分钟之前的xml文件 根据实际情况删除 -mmin -50
FILES=`find ${SRCDIR} -mmin -50 -name '*.xml'`

for FILE in ${FILES}
do
echo ${FILE}
#发送文件 (关键部分)
lftp -u ${USER},${PASSWORD} sftp://${IP}:${PORT} <<EOF
cd ${DESDIR}/
lcd ${SRCDIR}
put ${FILE}
by
EOF

done

单文件下载:

#!/bin/bash

USER=root
#密码
PASSWORD=5EYS40T04BMF
#下载文件目录
SRCDIR=/u02/dab
#FTP目录(待下载文件目录)
DESDIR=/u01/sftpFiles
#银联IP
IP=192.168.1.10
#端口
PORT=22022

lftp -u ${USER},${PASSWORD} sftp://${IP}:${PORT}<<EOF
cd ${DESDIR}
lcd ${SRCDIR}
#需要下载的文件为text.xml
get text.xml
by
EOF


还有其他shell脚本执行命令,但是上面的方式确实简单,实用。

比如实用except 进行密码处理:

http://blog.csdn.net/w13770269691/article/details/28463633
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: