111.12. 단계적 변경 디렉토리
Camel FTP는 파일 사용(예: 다운로드) 또는 파일 생성(예: 업로드)과 관련하여 두 가지 모드로 작동할 수 있습니다.
- Stepwise
- 단계적 없음
상황 및 보안 문제에 따라 둘 중 하나를 선택할 수 있습니다. 일부 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 (a.txt) 및 하위 (b.txt) 폴더에 파일이 있습니다.
111.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를 사용하여 디렉터리 구조를 통과합니다.
111.12.2. stepwise=false 사용 링크 복사링크가 클립보드에 복사되었습니다!
230 Logged on
TYPE A
200 Type set to A
SYST
215 UNIX emulated by FileZilla
PORT 127,0,0,1,4,122
200 Port command successful
LIST one/two
150 Opening data channel for directory list
226 Transfer OK
PORT 127,0,0,1,4,123
200 Port command successful
LIST one/two/sub-a
150 Opening data channel for directory list
226 Transfer OK
PORT 127,0,0,1,4,124
200 Port command successful
LIST one/two/sub-b
150 Opening data channel for directory list
226 Transfer OK
PORT 127,0,0,1,4,125
200 Port command successful
RETR one/two/foo.txt
150 Opening data channel for file transfer.
226 Transfer OK
PORT 127,0,0,1,4,126
200 Port command successful
RETR one/two/sub-a/a.txt
150 Opening data channel for file transfer.
226 Transfer OK
PORT 127,0,0,1,4,127
200 Port command successful
RETR one/two/sub-b/b.txt
150 Opening data channel for file transfer.
226 Transfer OK
QUIT
221 Goodbye
disconnected.
단계적으로 사용하지 않는 경우 볼 수 있듯이 CD 작업이 전혀 호출되지 않습니다.