Raw ftp commands

Raw FTP commands

These commands are useful when you need to send something in the ftpafter/ftpbefore syntax. For instance, although you might manually FTP by hand onto a machine and type “cd my_dir”, to change directory, when using ftpbefore in [[Ipftp]] you must use the raw equivalent:


ftpbefore:cwd my_dir

Command Syntax Description
ABOR

ABOR

Aborts a file transfer currently in progress.
ACCT*

ACCT account-info

This command is used to send account information on systems that require
it. Typically sent after a PASS command.
ALLO

ALLOsize [R max-record-size]

Allocates sufficient storage space to receive a file. If the maximum
size of a record also needs to be known, that is sent as a second
numeric parameter following a space, the capital letter “R”, and another
space.
APPE

APPE remote-filename

Append data to the end of a file on the remote host. If the file does
not already exist, it is created. This command must be preceded by a
PORT or PASV command so that the
server knows where to receive data from.
CDUP

CDUP

Makes the parent of the current directory be the current directory.
CWD

CWD remote-directory

Makes the given directory be the current directory on the remote host.
DELE

DELE remote-filename

Deletes the given file on the remote host.
HELP

HELP [command]

If a command is given, returns help on that command; otherwise,
returns general help for the FTP server (usually a list of supported
commands).
LIST

LIST [remote-filespec]

If remote-filespec refers to a file, sends information about that
file. If remote-filespec refers to a directory, sends information
about each file in that directory. remote-filespec defaults to the
current directory. This command must be preceded by a
PORT or PASV command.
MDTM

MDTM remote-filename

Returns the last-modified time of the given file on the remote host in
the format “YYYYMMDDhhmmss“: YYYY is the
four-digit year, MM is the month from 01 to 12,
DD is the day of the month from 01 to 31, hh is
the hour from 00 to 23, mm is the minute from 00 to 59, and
ss is the second from 00 to 59.
MKD

MKD remote-directory

Creates the named directory on the remote host.
MODE

MODE mode-character

Sets the transfer mode to one of:

  • S – Stream
  • B – Block
  • C – Compressed

The default mode is Stream.

NLST

NLST [remote-directory]

Returns a list of filenames in the given directory (defaulting to the
current directory), with no other information. Must be preceded by a
PORT or PASV command.
NOOP

NOOP

Does nothing except return a response.
PASS

PASS password

After sending the USER command, send this command to
complete the login process. (Note, however, that an ACCT
command may have to be used on some systems.)
PASV

PASV

ATells the server to enter “passive mode”. In passive mode, the server will
wait for the client to establish a connection with it rather than
attempting to connect to a client-specified port. The server will respond
with the address of the port it is listening on, with a message like:
227 Entering Passive Mode
(a1,a2,a3,a4,p1,p2)

where a1.a2.a3.a4 is the IP address and
p1*256+p2 is the port number.
PORT

PORT
a1,a2,a3,a4,p1,p2

Specifies the host and port to which the server should connect for the next
file transfer. This is interpreted as IP address
a1.a2.a3.a4, port p1*256+p2.
PWD

PWD

Returns the name of the current directory on the remote host.
QUIT

QUIT

Terminates the command connection.
REIN

REIN

Reinitializes the command connection – cancels the current
user/password/account information. Should be followed by a
USER command for another login.
REST

REST position

Sets the point at which a file transfer should start; useful for resuming
interrupted transfers. For nonstructured files, this is simply a decimal
number. This command must immediately precede a data transfer command
(RETR or STOR only); i.e. it must
come after any PORT or PASV command.
RETR

RETR remote-filename

Begins transmission of a file from the remote host. Must be preceded by
either a PORT command or a PASV
command to indicate where the server should send data.
RMD

RMD remote-directory

Deletes the named directory on the remote host.
RNFR

RNFR from-filename

Used when renaming a file. Use this command to specify the file to be
renamed; follow it with an RNTO command to specify the
new name for the file.
RNTO

RNTO to-filename

Used when renaming a file. After sending an RNFR
command to specify the file to rename, send this command to specify the
new name for the file.
SITE*

SITE site-specific-command

Executes a site-specific command.
SIZE

SIZE remote-filename

Returns the size of the remote file as a decimal number.
STAT

STAT [remote-filespec]

If invoked without parameters, returns general status information about
the FTP server process. If a parameter is given, acts like the
LIST command, except that data is sent over the
control connection (no PORT or PASV
command is required).
STOR

STOR remote-filename

Begins transmission of a file to the remote site. Must be preceded by
either a PORT command or a PASV
command so the server knows where to accept data from.
STOU

STOU

Begins transmission of a file to the remote site; the remote filename
will be unique in the current directory. The response from the server
will include the filename.
STRU

STRU structure-character

Sets the file structure for transfer to one of:

  • F – File (no structure)
  • R – Record structure
  • P – Page structure

The default structure is File.

SYST

SYST

Returns a word identifying the system, the word “Type:”, and the default
transfer type (as would be set by the TYPE command).
For example: UNIX Type: L8
TYPE

TYPE
type-character [second-type-character]

Sets the type of file to be transferred. type-character can be any
of:

  • A – ASCII text
  • E – EBCDIC text
  • I – image (binary data)
  • L – local format

For A and E, the second-type-character specifies how the text
should be interpreted. It can be:

  • N – Non-print (not destined for printing). This is the default if
    second-type-character is omitted.

  • T – Telnet format control (<CR>,
    <FF>, etc.)

  • C – ASA Carriage Control

For L, the second-type-character specifies the number of bits per
byte on the local system, and may not be omitted.

USER

USER usernameR

Send this command to begin the login process. username should be a
valid username on the system, or “anonymous” to initiate an anonymous
login.