110.12. 步骤更改目录
在消耗文件(例如下载)或生成文件(如上传)时,Camel FTP 可以在两种模式下操作。
- 步骤范围
- 没有分步
您可以根据您的情况和安全问题来选择其中之一。某些 Camel 最终用户仅在使用步骤范围时下载文件,而其他用户只能下载文件(如果未通过)。您至少可选择(从 Camel 2.6 开始)。
在 Camel 2.0 - 2.5 中,只有一个模式,即:
- 在 2.5 之前
- 2.5 步骤范围
现在,您可以用来控制行为的 选择步骤
是 Camel 2.6。
请注意,在大多数情况下,目录的分步更改将只在用户限制于其主目录以及主目录被报告为 "/"
时起作用。
两者之间的差别最好通过示例进行说明。假设我们在远程 FTP 服务器中有以下目录结构,我们需要遍历和下载文件:
/ /one /one/two /one/two/sub-a /one/two/sub-b
并且每个子(a.txt)和子(b.txt)文件夹中都有一个文件。
110.12.1. 使用 stepwise=true (默认模式)
TYPE A 200 Type set to A PWD 257 "/" is current directory. CWD one 250 CWD successful. "/one" is current directory. CWD two 250 CWD successful. "/one/two" is current directory. SYST 215 UNIX emulated by FileZilla PORT 127,0,0,1,17,94 200 Port command successful LIST 150 Opening data channel for directory list. 226 Transfer OK CWD sub-a 250 CWD successful. "/one/two/sub-a" is current directory. PORT 127,0,0,1,17,95 200 Port command successful LIST 150 Opening data channel for directory list. 226 Transfer OK CDUP 200 CDUP successful. "/one/two" is current directory. CWD sub-b 250 CWD successful. "/one/two/sub-b" is current directory. PORT 127,0,0,1,17,96 200 Port command successful LIST 150 Opening data channel for directory list. 226 Transfer OK CDUP 200 CDUP successful. "/one/two" is current directory. CWD / 250 CWD successful. "/" is current directory. PWD 257 "/" is current directory. CWD one 250 CWD successful. "/one" is current directory. CWD two 250 CWD successful. "/one/two" is current directory. PORT 127,0,0,1,17,97 200 Port command successful RETR foo.txt 150 Opening data channel for file transfer. 226 Transfer OK CWD / 250 CWD successful. "/" is current directory. PWD 257 "/" is current directory. CWD one 250 CWD successful. "/one" is current directory. CWD two 250 CWD successful. "/one/two" is current directory. CWD sub-a 250 CWD successful. "/one/two/sub-a" is current directory. PORT 127,0,0,1,17,98 200 Port command successful RETR a.txt 150 Opening data channel for file transfer. 226 Transfer OK CWD / 250 CWD successful. "/" is current directory. PWD 257 "/" is current directory. CWD one 250 CWD successful. "/one" is current directory. CWD two 250 CWD successful. "/one/two" is current directory. CWD sub-b 250 CWD successful. "/one/two/sub-b" is current directory. PORT 127,0,0,1,17,99 200 Port command successful RETR b.txt 150 Opening data channel for file transfer. 226 Transfer OK CWD / 250 CWD successful. "/" is current directory. QUIT 221 Goodbye disconnected.
当启用步骤步骤时,它会使用 CD xxx 遍历目录结构。