rewrite by sun!gorodish!guy
authorKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Tue, 14 Jan 1986 11:45:39 +0000 (03:45 -0800)
committerKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Tue, 14 Jan 1986 11:45:39 +0000 (03:45 -0800)
SCCS-vsn: usr.bin/ftp/ftp.1 6.2

usr/src/usr.bin/ftp/ftp.1

index 0349ecd..48845bc 100644 (file)
@@ -2,7 +2,7 @@
 .\" All rights reserved.  The Berkeley software License Agreement
 .\" specifies the terms and conditions for redistribution.
 .\"
 .\" All rights reserved.  The Berkeley software License Agreement
 .\" specifies the terms and conditions for redistribution.
 .\"
-.\"    @(#)ftp.1       6.1 (Berkeley) %G%
+.\"    @(#)ftp.1       6.2 (Berkeley) %G%
 .\"
 .TH FTP 1C ""
 .UC 5
 .\"
 .TH FTP 1C ""
 .UC 5
@@ -21,59 +21,53 @@ ftp \- ARPANET file transfer program
 ] [
 .B \-g
 ] [
 ] [
 .B \-g
 ] [
-.B host
+.B \-t
+] [
+.I host
 ]
 .SH DESCRIPTION
 .I Ftp
 is the user interface to the ARPANET standard File Transfer Protocol.
 ]
 .SH DESCRIPTION
 .I Ftp
 is the user interface to the ARPANET standard File Transfer Protocol.
-The program allows a user to transfer files to and from a
-remote network site.
-.PP
+\fIFtp\fP transfers files to and from a remote network site.
+.LP
 The client host with which 
 .I ftp
 is to communicate may be specified on the command line.
 If this is done,
 .I ftp
 The client host with which 
 .I ftp
 is to communicate may be specified on the command line.
 If this is done,
 .I ftp
-will immediately attempt to establish a connection to an FTP
-server on that host; otherwise, 
-.I ftp
-will enter its command interpreter and await instructions
-from the user.  When 
-.I ftp
-is awaiting commands from the user the prompt \*(lqftp>\*(rq
-is provided the user.  The following commands are recognized
+immediately attempts to establish a connection to an FTP server on that host;
+otherwise, \fIftp\fP enters its command interpreter and awaits instructions
+from the user.  When \fIftp\fP is awaiting commands from the user, it
+displays the prompt \*(lqftp>\*(rq.  The following commands are recognized
 by
 .IR ftp :
 .TP
 by
 .IR ftp :
 .TP
-.B \&! [command [args] ]
-Invoke an interactive shell on the local machine.
-If there are arguments, the first is taken to be a command to execute
-directly, with the rest of the arguments as its arguments.
+\fB\&! \fR[ \fIcommand \fR]
+Run
+.I command
+as a shell command on the local machine.
+If no 
+.I command
+is given, invoke an interactive shell.
 .TP
 \fBappend\fP \fIlocal-file\fP [ \fIremote-file\fP ]
 Append a local file to a file on the remote machine.  If
 .I remote-file
 is left unspecified, the local file name is used in naming the
 remote file.  File transfer uses the current settings for
 .TP
 \fBappend\fP \fIlocal-file\fP [ \fIremote-file\fP ]
 Append a local file to a file on the remote machine.  If
 .I remote-file
 is left unspecified, the local file name is used in naming the
 remote file.  File transfer uses the current settings for
-.IR type ,
-.IR format ,
-.IR mode ,
-and
-.IR structure .
+\*(lqrepresentation type\*(rq, \*(lqfile structure\*(rq,
+and \*(lqtransfer mode\*(rq.
 .TP
 .B ascii
 .TP
 .B ascii
-Set the file transfer 
-.I type
-to network ASCII.  This is the default type.
+Set the \*(lqrepresentation type\*(rq
+to \*(lqnetwork ASCII\*(rq.  This is the default type.
 .TP
 .B bell
 Arrange that a bell be sounded after each file transfer
 command is completed.
 .TP
 .B binary
 .TP
 .B bell
 Arrange that a bell be sounded after each file transfer
 command is completed.
 .TP
 .B binary
-Set the file transfer
-.I type
-to support binary image transfer.
+Set the \*(lqrepresentation type\*(rq to \*(lqimage\*(rq.
 .TP
 .B bye
 Terminate the FTP session with the remote server
 .TP
 .B bye
 Terminate the FTP session with the remote server
@@ -111,15 +105,18 @@ and, optionally, placing the output in
 .IR local-file .
 If no directory is specified, the current working
 directory on the remote machine is used.  If no local
 .IR local-file .
 If no directory is specified, the current working
 directory on the remote machine is used.  If no local
-file is specified, or \fIlocal-file\fP is \fB-\fP,
+file is specified, or \fIlocal-file\fP is \fB\-\fP,
 output comes to the terminal.
 .TP
 output comes to the terminal.
 .TP
-.BI form " format"
-Set the file transfer 
-.I form
-to 
-.IR format .
-The default format is \*(lqfile\*(rq.
+\fBform\fP [ \fIformat-name\fP ]
+Set the carriage control format subtype of the
+\*(lqrepresentation type\*(rq to
+.IR format-name .
+The only valid
+.I format-name
+is
+.BR non-print ,
+which corresponds to the default \*(lqnon-print\*(rq subtype.
 .TP
 \fBget\fP \fIremote-file\fP [ \fIlocal-file\fP ]
 Retrieve the 
 .TP
 \fBget\fP \fIremote-file\fP [ \fIlocal-file\fP ]
 Retrieve the 
@@ -127,30 +124,33 @@ Retrieve the
 and store it on the local machine.  If the local
 file name is not specified, it is given the same
 name it has on the remote machine.
 and store it on the local machine.  If the local
 file name is not specified, it is given the same
 name it has on the remote machine.
-The current settings for 
-.IR type ,
-.IR form ,
-.IR mode ,
-and
-.I structure
+The current settings for \*(lqrepresentation type\*(rq,
+\*(lqfile structure\*(rq, and \*(lqtransfer mode\*(rq
 are used while transferring the file.
 .TP
 are used while transferring the file.
 .TP
-\fBglob\fP
-Toggle filename expansion for \fBmdelete\fP, \fBmget\fP and \fBmput\fP.
-If globbing is turned off with \fBglob\fP, the file name arguments
-are taken literally and not expanded.
-Globbing for \fBmput\fP is done as in \fBcsh\fP(1).
-For \fBmdelete\fP and \fBmget\fP, each remote file name is expanded
-separately on the remote machine and the lists are not merged.
+\fBglob\fR
+Toggle filename expansion, or "globbing",  
+for \fBmdelete\fP, \fBmget\fP and \fBmput\fP.
+If globbing is turned off, filenames are taken literally.
+.IP
+Globbing for \fBmput\fP is done as in \fIcsh\fP\|(1).
+For \fBmdelete\fP and \fBmget\fP, each remote file name is
+expanded separately on the remote machine, and the lists are not merged.
+.IP
 Expansion of a directory name is likely to be radically
 different from expansion of the name of an ordinary file:
 Expansion of a directory name is likely to be radically
 different from expansion of the name of an ordinary file:
-the exact result depends on the foreign operating system and ftp server,
-and can be previewed by doing `\fBmls\fP\ \fIremote-files\fP\ \fB-\fP'.
-Note:  \fBmget\fP and \fBmput\fP are not meant to transfer
-entire directory subtrees of files.  That can be done by
-transferring a \fBtar\fP(1) archive of the subtree (in binary mode).
+the exact result depends on the remote operating system and
+FTP server,
+and can be previewed by doing `\fBmls\fP\ \fIremote-files\fP\ \fB\-\fP'.
+.IP
+\fBmget\fP and \fBmput\fP are not meant to transfer
+entire directory subtrees of files.  You can do this by
+transferring a \fItar\fP\|(1) archive of the subtree (using a
+\*(lqrepresentation type\*(rq of \*(lqimage\*(rq as set by the
+.B binary
+command).
 .TP
 .TP
-\fBhash\f
+\fBhash\fP
 Toggle hash-sign (``#'') printing for each data block
 transferred.  The size of a data block is 1024 bytes.
 .TP
 Toggle hash-sign (``#'') printing for each data block
 transferred.  The size of a data block is 1024 bytes.
 .TP
@@ -172,13 +172,14 @@ Print an abbreviated listing of the contents of a
 directory on the remote machine.  If
 .I remote-directory
 is left unspecified, the current working directory
 directory on the remote machine.  If
 .I remote-directory
 is left unspecified, the current working directory
-is used.  If no local file is specified, or if \fIlocal-file\fR is \fB-\fR,
+is used.  If no local file is specified, 
+or if \fIlocal-file\fR is \fB\-\fR,
 the output is sent to the terminal.
 .TP
 \fBmdelete\fP [ \fIremote-files\fP ]
 Delete the \fIremote-files\fP on the remote machine.
 .TP
 the output is sent to the terminal.
 .TP
 \fBmdelete\fP [ \fIremote-files\fP ]
 Delete the \fIremote-files\fP on the remote machine.
 .TP
-\fBmdir\fP [ \fIremote-files\fP ] [ \fIlocal-file\fP ]
+\fBmdir\fP \fIremote-files\fP \fIlocal-file\fP
 Like \fBdir\fP, except multiple remote files may be specified.
 .TP
 \fBmget\fP \fIremote-files\fP
 Like \fBdir\fP, except multiple remote files may be specified.
 .TP
 \fBmget\fP \fIremote-files\fP
@@ -186,21 +187,24 @@ Expand the \fIremote-files\fP on the remote machine
 and do a \fBget\fP for each file name thus produced.
 See \fBglob\fR for details on the filename expansion.
 Files are transferred into the local working directory,
 and do a \fBget\fP for each file name thus produced.
 See \fBglob\fR for details on the filename expansion.
 Files are transferred into the local working directory,
-which can be changed with `\fBlcd\fP\ directory';
-new local directories can be created with `\fB!\fP\ mkdir\ directory'.
+which can be changed with `\fBlcd\fP\ \fIdirectory\fP';
+new local directories can be created with
+`\fB!\fP\ \fBmkdir\fP\ \fIdirectory\fP'.
 .TP
 \fBmkdir\fP \fIdirectory-name\fP
 Make a directory on the remote machine.
 .TP
 .TP
 \fBmkdir\fP \fIdirectory-name\fP
 Make a directory on the remote machine.
 .TP
-\fBmls\fP [ \fIremote-files\fP ] [ \fIlocal-file\fP ]
+\fBmls\fP \fIremote-files\fP \fIlocal-file\fP
 Like \fBls\fP, except multiple remote files may be specified.
 .TP
 \fBmode\fP [ \fImode-name\fP ]
 Like \fBls\fP, except multiple remote files may be specified.
 .TP
 \fBmode\fP [ \fImode-name\fP ]
-Set the file transfer
-.I mode
-to
+Set the \*(lqtransfer mode\*(rq to
 .IR mode-name .
 .IR mode-name .
-The default mode is \*(lqstream\*(rq mode.
+The only valid
+.I mode-name
+is
+.BR stream ,
+which corresponds to the default \*(lqstream\*(rq mode.
 .TP
 \fBmput\fP \fIlocal-files\fP
 Expand wild cards in the list of local files given as arguments
 .TP
 \fBmput\fP \fIlocal-files\fP
 Expand wild cards in the list of local files given as arguments
@@ -225,7 +229,8 @@ the FTP server (see below).
 Toggle interactive prompting.  Interactive prompting
 occurs during multiple file transfers to allow the
 user to selectively retrieve or store files.
 Toggle interactive prompting.  Interactive prompting
 occurs during multiple file transfers to allow the
 user to selectively retrieve or store files.
-If prompting is turned off (default), any \fBmget\fP or \fBmput\fP
+By default, prompting is turned on.
+If prompting is turned off, any \fBmget\fP or \fBmput\fP
 will transfer all files, and any \fBmdelete\fP will delete all files.
 .TP
 \fBput\fP \fIlocal-file\fP [ \fIremote-file\fP ]
 will transfer all files, and any \fBmdelete\fP will delete all files.
 .TP
 \fBput\fP \fIlocal-file\fP [ \fIremote-file\fP ]
@@ -233,43 +238,39 @@ Store a local file on the remote machine.  If
 .I remote-file
 is left unspecified, the local file name is used
 in naming the remote file.  File transfer uses the
 .I remote-file
 is left unspecified, the local file name is used
 in naming the remote file.  File transfer uses the
-current settings for
-.IR type ,
-.IR format ,
-.IR mode ,
-and
-.IR structure .
+current settings for \*(lqrepresentation type\*(rq,
+\*(lqfile structure\*(rq, and \*(lqtransfer mode\*(rq.
 .TP
 .B pwd
 Print the name of the current working directory on the remote
 machine.
 .TP
 .B quit
 .TP
 .B pwd
 Print the name of the current working directory on the remote
 machine.
 .TP
 .B quit
-A synonym for bye.
+A synonym for \fBbye\fP.
 .TP
 .TP
-.BI quote "arg1 arg2 ..."
-The arguments specified are sent, verbatim, to the remote FTP
+\fBquote\fP \fIarg1\fP \fIarg2\fP ...
+Send the arguments specified, verbatim, to the remote FTP
 server.  A single FTP reply code is expected in return.
 .TP
 \fBrecv\fP \fIremote-file\fP [ \fIlocal-file\fP ]
 server.  A single FTP reply code is expected in return.
 .TP
 \fBrecv\fP \fIremote-file\fP [ \fIlocal-file\fP ]
-A synonym for get.
+A synonym for \fBget\fP.
 .TP
 \fBremotehelp\fP [ \fIcommand-name\fP ]
 Request help from the remote FTP server.  If a 
 .I command-name
 is specified it is supplied to the server as well.
 .TP
 .TP
 \fBremotehelp\fP [ \fIcommand-name\fP ]
 Request help from the remote FTP server.  If a 
 .I command-name
 is specified it is supplied to the server as well.
 .TP
-\fBrename\fP [ \fIfrom\fP ] [ \fIto\fP ]
+\fBrename\fP \fIfrom\fP \fIto\fP
 Rename the file
 .I from
 Rename the file
 .I from
-on the remote machine, to the file
+on the remote machine to have the name
 .IR to .
 .TP
 .BI rmdir " directory-name"
 Delete a directory on the remote machine.
 .TP
 \fBsend\fP \fIlocal-file\fP [ \fIremote-file\fP ]
 .IR to .
 .TP
 .BI rmdir " directory-name"
 Delete a directory on the remote machine.
 .TP
 \fBsend\fP \fIlocal-file\fP [ \fIremote-file\fP ]
-A synonym for put.
+A synonym for \fBput\fP.
 .TP
 .B sendport
 Toggle the use of PORT commands.  By default, 
 .TP
 .B sendport
 Toggle the use of PORT commands.  By default, 
@@ -281,34 +282,47 @@ command fails,
 will use the default data port.  When the use of PORT
 commands is disabled, no attempt will be made to use
 PORT commands for each data transfer.  This is useful
 will use the default data port.  When the use of PORT
 commands is disabled, no attempt will be made to use
 PORT commands for each data transfer.  This is useful
-for certain FTP implementations which do ignore PORT
-commands but, incorrectly, indicate they've been accepted.
+for certain FTP implementations which ignore PORT
+commands but incorrectly indicate they've been accepted.
 .TP
 .B status
 Show the current status of
 .IR ftp .
 .TP
 \fBstruct\fP [ \fIstruct-name\fP ]
 .TP
 .B status
 Show the current status of
 .IR ftp .
 .TP
 \fBstruct\fP [ \fIstruct-name\fP ]
-Set the file transfer
-.I structure
-to
+Set the \*(lqfile structure\*(rq to
 .IR struct-name .
 .IR struct-name .
-By default \*(lqstream\*(rq structure is used.
+The only valid
+.I struct-name
+is
+.BR file ,
+which corresponds to the default \*(lqfile\*(rq structure.
 .TP
 .B tenex
 .TP
 .B tenex
-Set the file transfer type to that needed to
+Set the \*(lqrepresentation type\*(rq to that needed to
 talk to TENEX machines.
 .TP
 .B trace
 talk to TENEX machines.
 .TP
 .B trace
-Toggle packet tracing.
+Toggle packet tracing (unimplemented).
 .TP
 \fBtype\fP [ \fItype-name\fP ]
 .TP
 \fBtype\fP [ \fItype-name\fP ]
-Set the file transfer
-.I type
-to
+Set the \*(lqrepresentation type\*(rq to
 .IR type-name .
 .IR type-name .
+The valid
+.IR type-name s
+are
+.B ascii
+for \*(lqnetwork ASCII\*(rq,
+.B binary
+or
+.B image
+for \*(lqimage\*(rq,
+and
+.B tenex
+for \*(lqlocal byte size\*(rq with a byte size of 8 (used to talk to
+TENEX machines).
 If no type is specified, the current type
 If no type is specified, the current type
-is printed.  The default type is network ASCII.
+is printed.  The default type is \*(lqnetwork ASCII\*(rq.
 .TP
 \fBuser\fP \fIuser-name\fP [ \fIpassword\fP ] [ \fIaccount\fP ]
 Identify yourself to the remote FTP server.  If the
 .TP
 \fBuser\fP \fIuser-name\fP [ \fIpassword\fP ] [ \fIaccount\fP ]
 Identify yourself to the remote FTP server.  If the
@@ -325,106 +339,127 @@ the FTP server.
 .B verbose
 Toggle verbose mode.  In verbose mode, all responses from
 the FTP server are displayed to the user.  In addition,
 .B verbose
 Toggle verbose mode.  In verbose mode, all responses from
 the FTP server are displayed to the user.  In addition,
-if verbose is on, when a file transfer completes, statistics
+if verbose mode is on, when a file transfer completes, statistics
 regarding the efficiency of the transfer are reported.  By default,
 regarding the efficiency of the transfer are reported.  By default,
-verbose is on.
+verbose mode is on if
+.IR ftp 's
+commands are coming from a terminal, and off otherwise.
 .TP
 \fB?\fP [ \fIcommand\fP ]
 .TP
 \fB?\fP [ \fIcommand\fP ]
-A synonym for help.
-.PP
+A synonym for \fBhelp\fP.
+.LP
 Command arguments which have embedded spaces may be quoted with
 quote (") marks.
 Command arguments which have embedded spaces may be quoted with
 quote (") marks.
+.LP
+If any command argument which is not indicated as being optional is
+not specified,
+.I ftp
+will prompt for that argument.
 .SH "FILE NAMING CONVENTIONS"
 .SH "FILE NAMING CONVENTIONS"
-Files specified as arguments to
+Local files specified as arguments to
 .I ftp
 commands are processed according to the following rules.
 .TP
 1)
 .I ftp
 commands are processed according to the following rules.
 .TP
 1)
-If the file name \*(lq\-\*(rq is specified, the
-.B stdin
-(for reading) or
-.B stdout
+If the file name \*(lq-\*(rq is specified, the
+standard input (for reading) or standard output
 (for writing) is used.
 .TP
 2)
 If the first character of the file name is \*(lq|\*(rq, the
 remainder of the argument is interpreted as a shell command.
 (for writing) is used.
 .TP
 2)
 If the first character of the file name is \*(lq|\*(rq, the
 remainder of the argument is interpreted as a shell command.
-.I Ftp
+.I ftp
 then forks a shell, using 
 then forks a shell, using 
-.IR popen (3)
-with the argument supplied, and reads (writes) from the stdout
-(stdin).  If the shell command includes spaces, the argument
+.IR popen (3S)
+with the argument supplied, and reads (writes) from the standard output
+(standard input) of that shell.  If the shell command includes spaces,
+the argument
 must be quoted; e.g. \*(lq"| ls -lt"\*(rq.  A particularly
 useful example of this mechanism is: \*(lqdir |more\*(rq.
 .TP
 3)
 must be quoted; e.g. \*(lq"| ls -lt"\*(rq.  A particularly
 useful example of this mechanism is: \*(lqdir |more\*(rq.
 .TP
 3)
-Failing the above checks, if ``globbing'' is enabled, 
+Failing the above checks, if ``globbing'' is enabled,
 local file names are expanded
 according to the rules used in the 
 .IR csh (1);
 local file names are expanded
 according to the rules used in the 
 .IR csh (1);
-c.f. the 
+c.f. the
 .I glob
 .I glob
-command. 
+command.
+.LP
+Note that remote file names are not processed, but are passed just as they
+are typed, except for the \fBmdelete\fP, \fBmdir\fP, \fBmget\fP,
+and \fBmls\fP commands, where they are expanded according to the rules of
+the remote host's operating system, if any.
 .SH "FILE TRANSFER PARAMETERS"
 The FTP specification specifies many parameters which may
 .SH "FILE TRANSFER PARAMETERS"
 The FTP specification specifies many parameters which may
-affect a file transfer.  The 
-.I type
-may be one of \*(lqascii\*(rq, \*(lqimage\*(rq (binary),
-\*(lqebcdic\*(rq, and \*(lqlocal byte size\*(rq (for PDP-10's
-and PDP-20's mostly).
-.I Ftp
-supports the ascii and image types of file transfer,
-plus local byte size 8 for \fBtenex\fP mode transfers.
-.PP
-.I Ftp
-supports only the default values for the remaining
-file transfer parameters: 
-.IR mode ,
-.IR form ,
-and
-.IR struct .
+affect a file transfer.
+.LP
+The \*(lqrepresentation type\*(rq
+may be one of \*(lqnetwork ASCII\*(rq, \*(lqEBCDIC\*(rq, \*(lqimage\*(rq,
+or \*(lqlocal byte size\*(rq with a specified byte size (for PDP-10's
+and PDP-20's mostly).  The \*(lqnetwork ASCII\*(rq and \*(lqEBCDIC\*(rq
+types have a further subtype which specifies whether vertical format control
+(newlines, form feeds, etc.) are to be passed through (\*(lqnon-print\*(rq),
+provided in TELNET format (\*(lqTELNET format controls\*(rq),
+or provided in ASA (FORTRAN) (\*(lqcarriage control (ASA)\*(rq) format.
+.I ftp
+supports the \*(lqnetwork ASCII\*(rq (subtype \*(lqnon-print\*(rq only)
+and \*(lqimage\*(rq types, plus \*(lqlocal byte size\*(rq
+with a byte size of 8 for communicating with TENEX machines.
+.LP
+The \*(lqfile structure\*(rq may be one of \*(lqfile\*(rq
+(no record structure), \*(lqrecord\*(rq, or \*(lqpage\*(rq.
+.I ftp
+supports only the default value, which is \*(lqfile\*(rq.
+.LP
+The \*(lqtransfer mode\*(rq may be one of \*(lqstream\*(rq,
+\*(lqblock\*(rq, or \*(lqcompressed\*(rq.
+.I ftp
+supports only the default value, which is \*(lqstream\*(rq.
 .SH OPTIONS
 Options may be specified at the command line, or to the 
 command interpreter.
 .SH OPTIONS
 Options may be specified at the command line, or to the 
 command interpreter.
-.PP
-The
+.TP
 .B \-v
 .B \-v
-(verbose on) option forces
+show all responses from the remote server, as well
+as report on data transfer statistics.  This is turned on by
+default if
 .I ftp
 .I ftp
-to show all responses from the remote server, as well
-as report on data transfer statistics.
-.PP
-The
+is running interactively with its input coming from the user's terminal.
+.TP
 .B \-n
 .B \-n
-option restrains 
-.I ftp
-from attempting \*(lqauto-login\*(rq upon initial connection.
+do not attempt \*(lqauto-login\*(rq upon initial connection.
 If auto-login is enabled, 
 .I ftp
 If auto-login is enabled, 
 .I ftp
-will check the
-.I .netrc
+checks the
+.BI . netrc
 file in the user's home directory for an entry describing
 an account on the remote machine.  If no entry exists,
 .I ftp
 file in the user's home directory for an entry describing
 an account on the remote machine.  If no entry exists,
 .I ftp
-will use the login name on the local machine as the user
-identity on the remote machine, and prompt for a password
+uses the login name on the local machine as the user
+identity on the remote machine, and prompts for a password
 and, optionally, an account with which to login.
 and, optionally, an account with which to login.
-.PP
-The
+.TP
 .B \-i
 .B \-i
-option turns off interactive prompting during
-multiple file transfers.
-.PP
-The
-.B \-d
-option enables debugging.
-.PP
-The
+turn off interactive prompting during multiple file transfers.
+.TP
 .B \-g
 .B \-g
-option disables file name globbing.
+disable filename "globbing."
+.TP
+.B \-d
+enable debugging.
+.TP
+.B \-t
+enable packet tracing (unimplemented).
+.SH "SEE ALSO"
+rcp(1), ftpd(8c)
 .SH BUGS
 .SH BUGS
-Many FTP server implementations do not support the experimental
-operations such as print working directory.  Aborting a file
-transfer does not work right; if one attempts this the local
-.I ftp
-will likely have to be killed by hand.
+Many FTP server implementations do not support experimental
+operations such as print working directory.
+.PP
+Aborting a
+.B get
+often causes the connection to be closed;
+aborting a
+.B put
+gives no indication that the transfer failed to complete.