CentOS 6.9使用Shell脚本实现FTP自动上传和下载文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS 6.9使用Shell脚本实现FTP自动上传和下载文件相关的知识,希望对你有一定的参考价值。
一、安装配置FTP:
# yum -y install vsftpd
# service vsftpd start
# ss -tunlp | grep 21
//添加本地FTP登录用户ftpuser
# useradd ftpuser
# echo 123456 | passwd --stdin ftpuser
# cd /etc/vsftpd/
# cp vsftpd.conf vsftpd.conf.bak
# vim vsftpd.conf
//允许本地用户登录FTP且对FTP具有写权限
local_enable=YES
write_enable=YES
//仅允许刚才添加的本地用户ftpuser能正常登录FTP
userlist_enable=YES
userlist_deny=NO
# echo ftpuser > user_list
//禁锢本地用户ftpuser于其家目录中
chroot_local_user=YES
# service vsftpd restart
//安装FTP客户端工具
# yum -y install ftp
# ftp 192.168.199.9
二:使用Shell脚本实现FTP自动上传和下载文件
FTP服务器:192.168.199.9
FTP目录:/home/ftpuser,已被chroot至/
本地目录:/software
//让ftpuser用户对/software目录具有写权限
# mkdir -pv /scripts
//从FTP上下载指定文件到本地目录
# vim /scripts/ftp_download.sh
#!/bin/bash
ftp -n -i 192.168.199.9 <<EOF
user ftpuser 123456
binary
cd /
lcd /software
get apache-tomcat-8.0.45.tar.gz
bye
EOF
echo "Download from FTP successfully."
备注:如果要实现批量下载文件,可以将get apache-tomcat-8.0.45.tar.gz修改为mget *
# chmod +x ftp_download.sh
//上传本地指定文件至FTP
# vim /scripts/ftp_upload.sh
#!/bin/bash
ftp -n -i 192.168.199.9 <<EOF
user ftpuser 123456
binary
cd /
lcd /software
put apache-tomcat-8.0.45.tar.gz
bye
EOF
echo "Upload to FTP successfully."
备注:如果要实现批量上传文件,可以将put apache-tomcat-8.0.45.tar.gz修改为mput *
# chmod +x ftp_upload.sh
说明:
<<:文件输入重定向
EOF:标识文件的开始和结尾,成对出现
ftp选项:
-n:禁止自动登录
-i:关闭多文件传输过程中的交互式提示
user FTP登录用户名 FTP登录密码
binary:使用二进制格式传输文件
以上是关于CentOS 6.9使用Shell脚本实现FTP自动上传和下载文件的主要内容,如果未能解决你的问题,请参考以下文章