Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file FTP传输成功后删除本地文件_Batch File_Ftp - Fatal编程技术网

Batch file FTP传输成功后删除本地文件

Batch file FTP传输成功后删除本地文件,batch-file,ftp,Batch File,Ftp,我正在编写一个批处理文件,该文件将执行以下操作: 连接到远程FTP站点 将所有文件从本地控制器推送到远程FTP站点 DISCONET 这很好,但是我还想在上传后清空本地目录(否则每次都会被传输)。不幸的是,我有一个问题,连接到side可能并不总是可能的,因此如果我添加一个粗糙的del。在批处理文件的末尾,它将删除这些文件,即使它们尚未上载 有人能想出一个解决这个问题的办法吗?i、 e.如果文件上传,则删除 @echo off cd \ cd c:\temp echo user bacon

我正在编写一个批处理文件,该文件将执行以下操作:

  • 连接到远程FTP站点
  • 将所有文件从本地控制器推送到远程FTP站点
  • DISCONET
  • 这很好,但是我还想在上传后清空本地目录(否则每次都会被传输)。不幸的是,我有一个问题,连接到side可能并不总是可能的,因此如果我添加一个粗糙的del。在批处理文件的末尾,它将删除这些文件,即使它们尚未上载

    有人能想出一个解决这个问题的办法吗?i、 e.如果文件上传,则删除

        @echo off
    cd \
    cd c:\temp
    echo user bacon> ftpcmd.dat
    echo eggs>> ftpcmd.dat
    echo bin>> ftpcmd.dat
    echo put *.xls>> ftpcmd.dat
    echo bye>> ftpcmd.dat
    ftp -n -s:ftpcmd.dat <Server>
    del ftpcmd.dat
    
    @echo关闭
    光盘\
    cd c:\temp
    echo用户bacon>ftpcmd.dat
    回声蛋>>ftpcmd.dat
    echo bin>>ftpcmd.dat
    echo put*.xls>>ftpcmd.dat
    回声再见>>ftpcmd.dat
    ftp-n-s:ftpcmd.dat
    del ftpcmd.dat
    
    ftp命令似乎不会返回要操作的错误级别,所以最好的选择是将ftp命令的输出重定向到一个文件,并使用findstr检查输出中的错误

    Windows FTP命令不提供保证文件完整的方法

    命令行FTP传输可能会失败,您将有一个被截断的文件,FTP不提供检测此情况的方法