FTP(File Transfer Protocol) 명령어 목록
FTP는 파일 전송을 위해 클라이언트와 서버 간에 텍스트 기반 명령을 교환한다. 아래는 RFC 959(FTP 표준) 및 널리 사용되는 구현에 포함된 주요 명령어 목록이며, 각 명령어는 대문자로 표기된다.
| 명령어 | 설명 |
|---|---|
| USER | 로그인 시 사용자 이름을 전달한다. |
| PASS | 로그인 시 비밀번호를 전달한다. |
| ACCT | 추가 계정 정보(옵션)를 전달한다. |
| CWD | 현재 작업 디렉터리를 변경한다. |
| CDUP | 상위 디렉터리(..)로 이동한다. |
| SMNT | 파일 시스템을 마운트한다(일부 서버 전용). |
| QUIT | 세션을 종료하고 연결을 닫는다. |
| REIN | 로그인 상태를 초기화하고 인증 없이 재시작한다. |
| PORT | 데이터 전송을 위한 클라이언트의 IP·포트 정보를 전달한다(액티브 모드). |
| PASV | 서버가 데이터 전송용 포트를 지정하도록 요청한다(패시브 모드). |
| TYPE | 전송 형식을 지정한다(예: A=ASCII, I=Binary). |
| MODE | 전송 모드를 지정한다(예: S=스트림, B=블록, C=압축). |
| STRU | 파일 구조를 지정한다(예: F=파일, R=레코드, P=페이지). |
| RETR | 지정한 파일을 서버에서 클라이언트로 다운로드한다. |
| STOR | 지정한 파일을 클라이언트에서 서버로 업로드한다. |
| STOU | 중복되지 않는 파일 이름으로 파일을 저장한다. |
| APPE | 기존 파일 끝에 데이터를 추가한다(append). |
| ALLO | 전송을 위한 공간을 사전에 할당한다(옵션). |
| REST | 전송을 재시작할 오프셋(바이트 위치)을 지정한다. |
| RNFR | 파일/디렉터리 이름을 변경하기 위한 첫 단계(From). |
| RNTO | 파일/디렉터리 이름을 변경하기 위한 두 번째 단계(To). |
| ABOR | 현재 전송 중인 작업을 중단한다. |
| DELE | 지정한 파일을 삭제한다. |
| RMD | 지정한 디렉터리를 삭제한다. |
| MKD | 새로운 디렉터리를 만든다. |
| PWD | 현재 작업 디렉터리의 경로를 반환한다. |
| LIST | 디렉터리 내용을 상세 형식으로 열거한다. |
| NLST | 디렉터리 내용을 파일 이름만 열거한다. |
| SITE | 사이트별 확장 명령을 전달한다(예: SITE CHMOD). |
| SYST | 서버 운영 체제 종류를 확인한다. |
| STAT | 현재 세션 혹은 지정 파일/디렉터리 상태 정보를 반환한다. |
| HELP | 지원되는 명령어 목록 또는 특정 명령어의 사용법을 제공한다. |
| NOOP | 연결 유지 확인용 빈 명령이다. |
참고: 위 표에 제시된 명령어는 국제 표준(RFC 959) 및 대부분의 상용·오픈소스 FTP 서버·클라이언트에서 지원되는 기본 명령어이다. 일부 서버는 추가적인 SITE 서브명령이나 확장 명령을 제공할 수 있다.