【Shell】linux使用SFTP批量上传

SFTP地址、端口、账户、密码登需要修改。
大文件可以用nohup start.sh & 放置后台执行。
使用 jobs 可以查看后台执行的任务。
将代码复制到记事本,改名和后缀为 xxx.sh ,即可通过sh 命令执行。

#!/bin/bash
 
#SFTP配置信息
#用户名
USER=xxxx
#密码
PASSWORD=xxxx
#待上传文件根目录
SRCDIR=/data/20230306
#FTP目录
DESDIR=/upload/sc/gs
#IP
IP=xxxxxxx
#端口
PORT=xxxxx

#获取文件
cd ${SRCDIR} ;
echo $SRCDIR
#目录下的所有文件
#FILES=`ls` 
#查找目录下,指定后缀的文件集合,支持通配符
FILES=`find ${SRCDIR} -name '*.zip'`
 
for FILE in ${FILES}
do
    echo ${FILE}
    #发送文件 (关键部分)
    lftp -u ${USER},${PASSWORD} sftp://${IP}:${PORT} <{DESDIR}/
    lcd ${SRCDIR}
    mput ${FILE}
    by
EOF
done

你可能感兴趣的:(Shell,linux,服务器,运维)