阅读 120

FTP客户端Shell脚本,实现指定目录下逐个上传文件

 

脚本内容:

#!/bin/bash


function findProc() {
        PROC_NAME=ftp
        ProcNumber=`ps -ef |grep -w $PROC_NAME|grep -v grep|wc -l`
        if [ $ProcNumber -le 0 ];then
                fileftp
                exit
        else
                sleep 120
                findProc
        fi
}


function fileftp() {
        USER=uploadfile
        PASS=uploadfile
        HOST=192.168.10.69
        PORT=21
        uploadDir=/home/uploadfile/

        for upfile in `ls $uploadDir`
        do
        exec 6>&1 1>/tmp/ftptmp.txt
        ftp -nv<
        open $HOST $PORT
        user $USER $PASS
        binary
        lcd $uploadDir
        put $upfile
        close
        bye
!

        exec 1>&6
        exec 6>&-
        if grep -q "Transfer complete" /tmp/ftptmp.txt;then
                echo -n "`date ‘+%Y-%m-%d %H:%M‘` ---> " >> /home/uploadfile/upload_ftp.log
                echo    "$upfile has been successfully uploaded." >> /home/uploadfile/upload_ftp.log
                if [ $upfile != "upload_ftp.log" ];then
                rm -f $uploadDir/$upfile
                fi
        else
                echo -n "`date ‘+%Y-%m-%d %H:%M‘` ---> " >> /home/uploadfile/upload_ftp.log
                echo    "$upfile uploaded failed." >> /home/uploadfile/upload_ftp.log
        fi
        done
}

findProc

 

原文:https://www.cnblogs.com/caoyibin/p/14883265.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐