首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批处理命令以检查FTP连接是否成功

批处理命令以检查FTP连接是否成功
EN

Stack Overflow用户
提问于 2015-07-14 11:13:26
回答 2查看 3.5K关注 0票数 1

我正在编写一个批处理命令,通过FTP发送数据。在发送实际数据之前,我需要查找FTP服务器是否处于活动状态/正在运行。如何在批处理命令中检查?

当连接到服务器时,服务器用"220服务器就绪“消息进行响应。

EN

回答 2

Stack Overflow用户

发布于 2015-07-15 01:58:39

做这样的事:

代码语言:javascript
复制
YourFTPCommand | find /i /v "220 server ready" && goto :ServerNotReady

解释:

  1. 调用FTP命令的输出以查找
  2. 执行不区分大小写(/i)的搜索输出,该输出不包含(/v)字符串"220服务器就绪“
  3. 如果找到这样的字符串,到某个地方去(&&)
票数 1
EN

Stack Overflow用户

发布于 2015-07-19 07:31:44

我不认为有一种可靠的方法可以用Windowsftp.exe来做到这一点。

不管连接或先前的命令是否成功,它都会盲目地继续运行命令。

它甚至不会通过退出代码报告结果。

您所能做的就是解析ftp.exe输出。

你最好使用第三方FTP客户端。

例如,对于WinSCP脚本,您可以使用:

代码语言:javascript
复制
@echo off

winscp.com /log=ftp.log /command ^
    "open ftp://user:password@example.com/" ^
    "put c:\local\path\file.txt" ^
    "exit" 

如果连接( open命令)失败,WinSCP将不会执行以下命令( put)。

另见将Windows脚本转换为WinSCP FTP脚本

(我是WinSCP的作者)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31405011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档