List of FTP commands

Below is a list of FTP commands that may be sent to a File Transfer Protocol (FTP) server. It includes all commands that are standardized by the Internet Engineering Task Force (IETF) in RFC 959, plus extensions. Note that most command-line FTP clients present their own non-standard 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 RFC 959 Abort an active file transfer.
ACCT RFC 959 Account information.
ADAT RFC 2228 Authentication/Security Data
ALLO RFC 959 Allocate sufficient disk space to receive a file.
APPE RFC 959 Append (with create)
AUTH RFC 2228 Authentication/Security Mechanism
AVBL Streamlined FTP Command Extensions Get the available space
CCC RFC 2228 Clear Command Channel
CDUP RFC 959 Change to Parent Directory.
CONF RFC 2228 Confidentiality Protection Command
CSID Streamlined FTP Command Extensions Client / Server Identification
CWD RFC 697 Change working directory.
DELE RFC 959 Delete file.
DSIZ Streamlined FTP Command Extensions 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 RFC 959 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 RFC 959 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 The 'MFMT', 'MFCT', and 'MFF' Command Extensions for FTP Modify the creation time of a file.
MFF The 'MFMT', 'MFCT', and 'MFF' Command Extensions for FTP Modify fact (the last modification time, creation time, UNIX group/owner/mode of a file).
MFMT The 'MFMT', 'MFCT', and 'MFF' Command Extensions for FTP Modify the last modification time of a file.
MIC RFC 2228 Integrity Protected Command
MKD RFC 959 Make directory.
MLSD RFC 3659 Lists the contents of a directory in a standardized machine-readable format.
MLST RFC 3659 Provides data about exactly the object named on its command line in a standardized machine-readable format.
MODE RFC 959 Sets the transfer mode (Stream, Block, or Compressed).
NLST RFC 959 Returns a list of file names in a specified directory.
NOOP RFC 959 No operation (dummy packet; used mostly on keepalives).
OPTS RFC 2389 Select options for a feature (for example OPTS UTF8 ON).
PASS RFC 959 Authentication password.
PASV RFC 959 Enter passive mode.
PBSZ RFC 2228 Protection Buffer Size
PORT RFC 959 Specifies an address and port to which the server should connect.
PROT RFC 2228 Data Channel Protection Level.
PWD RFC 959 Print working directory. Returns the current directory of the host.
QUIT RFC 959 Disconnect.
REIN RFC 959 Re initializes the connection.
REST RFC 3659 Restart transfer from the specified point.
RETR RFC 959 Retrieve a copy of the file
RMD RFC 959 Remove a directory.
RMDA Streamlined FTP Command Extensions Remove a directory tree
RNFR RFC 959 Rename from.
RNTO RFC 959 Rename to.
SITE RFC 959 Sends site specific commands to remote server (like SITE IDLE 60 or SITE UMASK 002). Inspect SITE HELP output for complete list of supported commands.
SIZE RFC 3659 Return the size of a file.
SMNT RFC 959 Mount file structure.
SPSV FTP Extension Allowing IP Forwarding (NATs) Use single port passive mode (only one TCP port number for both control connections and passive-mode data connections)
STAT RFC 959 Returns information on the server status, including the status of the current connection
STOR RFC 959 Accept the data and to store the data as a file at the server site
STOU RFC 959 Store file uniquely.
STRU RFC 959 Set file transfer structure.
SYST RFC 959 Return system type.
THMB Streamlined FTP Command Extensions Get a thumbnail of a remote image file
TYPE RFC 959 Sets the transfer mode (ASCII/Binary).
USER RFC 959 Authentication username.
XCUP &1000775 RFC 775 Change to the parent of the current working directory
XMKD &1000775 RFC 775 Make a directory
XPWD &1000775 RFC 775 Print the current working directory
XRCP &1000743 RFC 743 RFC 959
XRMD &1000775 RFC 775 Remove the directory
XRSQ &1000743 RFC 743 RFC 959
XSEM &1000737 RFC 737 Send, mail if cannot
XSEN &1000737 RFC 737 Send to terminal

See also

[edit]
[edit]
  • RFC 697 - CWD Command of FTP
  • RFC 959 - File Transfer Protocol (FTP)
  • RFC 1639 - FTP Operation Over Big Address Records (FOOBAR)
  • RFC 2228 - FTP Security Extensions
  • RFC 2389 - Feature negotiation mechanism for the File Transfer Protocol
  • RFC 2428 - FTP Extensions for IPv6 and NATs
  • RFC 2640 - Internationalization of the File Transfer Protocol
  • RFC 3659 - Extensions to FTP
  • RFC 5797 - FTP Command and Extension Registry
  • RFC 7151 - File Transfer Protocol HOST Command for Virtual Hosts
  • The 'MFMT', 'MFCT', and 'MFF' Command Extensions for FTP
  • Streamlined FTP Command Extensions ('CSID', 'AVBL', 'DSIZ', 'RMDA', and 'THMB' commands)
  • FTP Extension Allowing IP Forwarding (NATs)
  • UTF-8 Option for FTP
  • IANA FTP Commands and Extensions registry - The official registry of FTP Commands and Extensions
  • Raw FTP command list