【发布时间】:2015-03-24 20:38:33
【问题描述】:
我需要创建一个批处理文件,它会转到受保护的 FTP 站点,检查文件类型 (*.txt) 是否存在,如果存在,则继续下一步,如果不存在,则返回 0 并结束工作。
我进行了广泛的搜索,但找不到任何解决方案。
【问题讨论】:
标签: batch-file if-statement ftp
我需要创建一个批处理文件,它会转到受保护的 FTP 站点,检查文件类型 (*.txt) 是否存在,如果存在,则继续下一步,如果不存在,则返回 0 并结束工作。
我进行了广泛的搜索,但找不到任何解决方案。
【问题讨论】:
标签: batch-file if-statement ftp
这不是一项简单的任务,特别是如果您需要检查与掩码匹配的文件(而不是特定文件)。
你可以使用WinSCP scripting:
@echo off
set REMOTE_PATH=/home/user/*.txt
winscp.com /command ^
"open ftp://user:password@host/" ^
"option failonnomatch on" ^
"ls %REMOTE_PATH%" ^
"exit"
if %ERRORLEVEL% neq 0 goto error
echo File(s) matching %REMOTE_PATH% exist
rem Do something
exit 0
:error
echo Error or no file matching %REMOTE_PATH% exists
exit 1
以上代码来自Checking file existence上的WinSCP文章。
(我是 WinSCP 的作者)
【讨论】:
open 命令需要看起来像:open ftps://username:password@host/ -implicit