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自動上傳和下載文件