lffsonic 2011-03-08 11:05
浏览 851
已采纳

linux 如何实现定时调度把远程ftp指定目录文件拷贝到另外一台远程ftp指定目录里面

linux定时调度使用crontab命令操作,没有问题,现在要写一个sh脚步,如何把远程ftp目录文件拷贝到另外一台ftp目录里面

  • 写回答

5条回答 默认 最新

  • surpass_li 2011-03-08 21:27
    关注

    #!/bin/bash
    #file autobackup shell
    #
    #
    backupdir=/dbbackup/
    waitfilename=/home/test/soft

    ftpserver=172.1.1.2
    ftpuser=test
    ftppasswd=test

    ftpserver2=172.1.1.3
    ftpuser2=test
    ftppasswd2=test

    #------------------write the operater command to log file
    logfile=/var/log/_backup.log
    logtmp=/var/log/_mybackup.tmp

    #===============================================

    echo "start====================================>">>$logfile
    cd $backupdir
    tar czvf $backupdir$newfile $waitfilename >>$logfile 2>&1
    echo "$backupdir$newfile Backup Success!" >>$logfile

    if [ -z $ftpserver ];then
    echo "Ftp Server not set,Copy to Ftp Failed ..." >>$logfile
    exit 1
    elif [ -z $ftpuser ];then
    echo "Ftp user not set, Copy to Ftp Failed ..." >>$logfile
    exit 2
    elif [ -z $ftppasswd ]; then
    echo "Ftp password not set, Copy to Ftp Failed ..." >>$logfile
    exit 3
    else
    echo "Start copy to Ftp server to local...." >> $logfile
    ftp -i -n < open $ftpserver
    user $ftpuser $ftppasswd
    lcd $waitfilename
    hash
    prompt
    mget *.*
    close
    bye
    end_ftp
    fi
    echo "back to other ftp server====================================>">>$logfile
    if [ -z $ftpserver2 ];then
    echo "Ftp Server2 not set,Copy to Ftp Failed ..." >>$logfile
    exit 4
    elif [ -z $ftpuser2 ];then
    echo "Ftp user not set, Copy to Ftp Failed ..." >>$logfile
    exit 5
    elif [ -z $ftppasswd2 ]; then
    echo "Ftp password not set, Copy to Ftp Failed ..." >>$logfile
    exit 6
    else
    echo "Start copy local to other Ftp server ...." >> $logfile
    ftp -i -n <<end_ftp2
    open $ftpserver2
    user $ftpuser2 $ftppasswd2
    lcd $waitfilename
    hash
    prompt
    mput .
    close
    bye
    end_ftp2
    fi

    echo "End=======================================">>$logfile

    the end of the auto backup script

    把以上shell脚本保存成文件,并配成可执行的,配到crontab中即可实现自动备份

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog