List of FTP commands
Below is a list of FTP commands that may be sent to an FTP server, including all commands that are standardized in RFC 959 by the IETF. All commands below are RFC 959 based unless stated otherwise. Note that most command-line FTP clients present their own set of commands to users. For example, GET is the common user command to download a file instead of the raw command RETR.
Command | RFC | Description |
ABOR | Abort an active file transfer. | |
ACCT | Account information. | |
ADAT | RFC 2228 | Authentication/Security Data |
ALLO | Allocate sufficient disk space to receive a file. | |
APPE | Append | |
AUTH | RFC 2228 | Authentication/Security Mechanism |
AVBL | Get the available space | |
CCC | RFC 2228 | Clear Command Channel |
CDUP | Change to Parent Directory. | |
CONF | RFC 2228 | Confidentiality Protection Command |
CSID | Client / Server Identification | |
CWD | RFC 697 | Change working directory. |
DELE | Delete file. | |
DSIZ | Get the directory size | |
ENC | RFC 2228 | Privacy Protected Channel |
EPRT | RFC 2428 | Specifies an extended address and port to which the server should connect. |
EPSV | RFC 2428 | Enter extended passive mode. |
FEAT | RFC 2389 | Get the feature list implemented by the server. |
HELP | Returns usage documentation on a command if specified, else a general help document is returned. | |
HOST | RFC 7151 | Identify desired virtual host on server, by name. |
LANG | RFC 2640 | Language Negotiation |
LIST | Returns information of a file or directory if specified, else information of the current working directory is returned. | |
LPRT | RFC 1639 | Specifies a long address and port to which the server should connect. |
LPSV | RFC 1639 | Enter long passive mode. |
MDTM | RFC 3659 | Return the last-modified time of a specified file. |
MFCT | Modify the creation time of a file. | |
MFF | Modify fact. | |
MFMT | Modify the last modification time of a file. | |
MIC | RFC 2228 | Integrity Protected Command |
MKD | Make directory. | |
MLSD | RFC 3659 | Lists the contents of a directory if a directory is named. |
MLST | RFC 3659 | Provides data about exactly the object named on its command line, and no others. |
MODE | Sets the transfer mode. | |
NLST | Returns a list of file names in a specified directory. | |
NOOP | No operation. | |
OPTS | RFC 2389 | Select options for a feature. |
PASS | Authentication password. | |
PASV | Enter passive mode. | |
PBSZ | RFC 2228 | Protection Buffer Size |
PORT | Specifies an address and port to which the server should connect. | |
PROT | RFC 2228 | Data Channel Protection Level. |
PWD | Print working directory. Returns the current directory of the host. | |
QUIT | Disconnect. | |
REIN | Re initializes the connection. | |
REST | RFC 3659 | Restart transfer from the specified point. |
RETR | Retrieve a copy of the file | |
RMD | Remove a directory. | |
RMDA | Remove a directory tree | |
RNFR | Rename from. | |
RNTO | Rename to. | |
SITE | Sends site specific commands to remote server. Inspect SITE HELP output for complete list of supported commands. | |
SIZE | RFC 3659 | Return the size of a file. |
SMNT | Mount file structure. | |
SPSV | Use single port passive mode | |
STAT | Returns information on the server status, including the status of the current connection | |
STOR | Accept the data and to store the data as a file at the server site | |
STOU | Store file uniquely. | |
STRU | Set file transfer structure. | |
SYST | Return system type. | |
THMB | Get a thumbnail of a remote image file | |
TYPE | Sets the transfer mode. | |
USER | Authentication username. | |
XCUP | RFC 775 | Change to the parent of the current working directory |
XMKD | RFC 775 | Make a directory |
XPWD | RFC 775 | Print the current working directory |
XRCP | RFC 743 | |
XRMD | RFC 775 | Remove the directory |
XRSQ | RFC 743 | |
XSEM | 737 | RFCSend, mail if cannot |
XSEN | RFC 737 | Send to terminal |