shell 脚本之文件打包上传ftp

shell 脚本之文件打包上传ftp

功能描述:
主要是将本地的文件打包成tar包,然后上传到ftp的指定目录下。

功能实现

#!/bin/bash
source /etc/profile

echo -e "\033[31m ****** FTP 上传文件 START ****** \033[0m"

#[ftp]
fip=`awk -F '=' '/\[ftp\]/{a=1}a==1&&$1~/ip/{print $2;exit}' config.ini`
funame=`awk -F '=' '/\[ftp\]/{a=1}a==1&&$1~/username/{print $2;exit}' config.ini`
fpwd=`awk -F '=' '/\[ftp\]/{a=1}a==1&&$1~/password/{print $2;exit}' config.ini`
ftpdir=`awk -F '=' '/\[ftp\]/{a=1}a==1&&$1~/upfile/{print $2;exit}' config.ini`

#切换目录
localfiledir=`awk -F '=' '/\[ftp\]/{a=1}a==1&&$1~/localfiledir/{print $2;exit}' config.ini`

cd $localfiledir

##删除空文件
find . -name "*" -type f -size 0c | xargs -n 1 rm -rf

today=`date +%Y%m%d`
filename=${today}".tar"

##打包
tar -cvf $filename $localfiledir

#连接ftp上传文件
ftp -n -i <<EOF
open $fip
user $funame $fpwd
bin
cd $ftpdir
put $filename
bye
EOF

echo -e "\033[31m ****** FTP 上传文件 END ****** \033[0m"

注:可以在此基础上进行扩展,达到自己想要的功能。

上一篇:进程终止,环境表以及在内存中布局和非局部跳转


下一篇:thinkphp 6.0 使用tinyMCE image 图片上传插件应该注意的问题