Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.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
Windows 使用批处理命令自动连接到FTP服务器,继续批处理脚本,然后在必要时运行FTP命令_Windows_Batch File - Fatal编程技术网

Windows 使用批处理命令自动连接到FTP服务器,继续批处理脚本,然后在必要时运行FTP命令

Windows 使用批处理命令自动连接到FTP服务器,继续批处理脚本,然后在必要时运行FTP命令,windows,batch-file,Windows,Batch File,这是我想做的。是否可以使用批处理(Windows XP)文件 提示用户登录到FTP服务器 继续执行其余批处理命令,同时保持FTP会话/登录处于活动状态 需要时,可将FTP PUT命令与批处理命令一起使用 不,我想不出在继续运行批处理文件并向ftp进程发送命令的同时保持ftp进程活动的方法 但是,如果这符合您的需要,您的批处理文件可以首先收集所需的所有数据,生成包含所有ftp命令的文件,然后作为最后一步将该文件传递给ftp.exe 例如: SET /P ftpuser=Username: SET

这是我想做的。是否可以使用批处理(Windows XP)文件

  • 提示用户登录到FTP服务器

  • 继续执行其余批处理命令,同时保持FTP会话/登录处于活动状态

  • 需要时,可将FTP PUT命令与批处理命令一起使用


  • 不,我想不出在继续运行批处理文件并向ftp进程发送命令的同时保持ftp进程活动的方法

    但是,如果这符合您的需要,您的批处理文件可以首先收集所需的所有数据,生成包含所有ftp命令的文件,然后作为最后一步将该文件传递给ftp.exe

    例如:

    SET /P ftpuser=Username:
    SET /P ftppass=Password:
    
    :: generate ftp script file
    ECHO %ftpuser% > ftpcommands.txt
    ECHO %ftppass% >> ftpcommands.txt
    ECHO put file.txt >> ftpcommands.txt
    ECHO quit >> ftpcommands.txt
    
    :: now call ftp and have it process all the commands
    ftp -s:ftpcommands.txt server.com
    

    不,我想不出在继续运行批处理文件并向ftp进程发送命令的同时保持ftp进程活动的方法

    但是,如果这符合您的需要,您的批处理文件可以首先收集所需的所有数据,生成包含所有ftp命令的文件,然后作为最后一步将该文件传递给ftp.exe

    例如:

    SET /P ftpuser=Username:
    SET /P ftppass=Password:
    
    :: generate ftp script file
    ECHO %ftpuser% > ftpcommands.txt
    ECHO %ftppass% >> ftpcommands.txt
    ECHO put file.txt >> ftpcommands.txt
    ECHO quit >> ftpcommands.txt
    
    :: now call ftp and have it process all the commands
    ftp -s:ftpcommands.txt server.com
    

    Windows
    ftp
    通过其
    -s
    开关支持批处理。但是,在等待更多命令时,没有好方法保持FTP会话的活动状态。
    ftp
    命令将从头到尾处理其
    -s
    脚本,然后退出


    除了让批处理脚本生成ftp-s使用的脚本并根据需要运行它之外,我能想到的唯一解决方案是根据需要进行复制。

    Windows
    ftp
    通过其
    -s
    开关支持批处理。但是,在等待更多命令时,没有好方法保持FTP会话的活动状态。
    ftp
    命令将从头到尾处理其
    -s
    脚本,然后退出


    除了让批处理脚本生成ftp-s使用的脚本并根据需要运行它之外,我能想到的唯一解决方案是根据需要进行复制。

    这听起来很有趣:这将如何工作?假设我想向FTP服务器127.0.0.1发送一个文件。如果我将此映射到N:/,我将使用什么命令发送文件?
    copy file.ext N:\path\from\ftp\root
    ,就像您正在复制到闪存驱动器或Windows网络共享一样。请注意,我从未尝试过通过命令行将FTP服务映射到驱动器号,因此我不能说在什么情况下它会失败/成功。例如,如果FTP服务器超时连接,文件副本是否尝试重新连接,或者您是否必须
    net use N:/delete
    net use N:\\hosts\u entry\directory/user:ftpuser ftppass
    重新连接?我不知道。这听起来很有趣:这是怎么回事?假设我想向FTP服务器127.0.0.1发送一个文件。如果我将此映射到N:/,我将使用什么命令发送文件?
    copy file.ext N:\path\from\ftp\root
    ,就像您正在复制到闪存驱动器或Windows网络共享一样。请注意,我从未尝试过通过命令行将FTP服务映射到驱动器号,因此我不能说在什么情况下它会失败/成功。例如,如果FTP服务器超时连接,文件副本是否尝试重新连接,或者您是否必须
    net use N:/delete
    net use N:\\hosts\u entry\directory/user:ftpuser ftppass
    重新连接?我不知道。