.TH ckermit "" "" Command
.II "kermit, interactive"
.PC "Interactive inter-system communication and file transfer"
\fBckermit [\fB-abcdefghiklpqrstwx\fB] [ \fIfile ... \fB]\fR
.PP
.HS
.SH Options
.IC "\fB\-a \fIfilename\fR"
Give an alternate name to file
.IC "\fB\-b \fIbaudrate\fR"
Set the baud rate of the device to \fIbaudrate\fR
.IC \fB\-c\fR
Connect
.IC \fB\-d\fR
Use debug mode
.IC "\fB\-e \fIn\fR"
Set the length of the packet to \fIn\fR
.IC \fB\-f\fR
Send a ``finish'' command to a remote server
.IC "\fB\-g \fIfile\fR"
Ask a remote system to send \fIfile\fR
.IC \fB\-h\fR
Print help
.IC \fB\-i\fR
Specify that the file being transferred is binary
.IC \fB\-k\fR
Passively receive files
.IC "\fB\-l \fIdevice\fR"
Name the serial device to be used
.IC \fB\-n\fR
Like \fB\-c\fR,
but used after a protocol transaction has occurred
.IC "\fB\-p \fIx\fR"
Set parity to \fIx\fR
.IC \fB\-q\fR
Quiet mode \(em no messages
.IC \fB\-r\fR
Receive files
.IC "\fB\-s \fIfile\fR"
Send \fIfile\fR
.IC \fB\-t\fR
Specify half duplex
.IC \fB\-w\fR
Write-protect \(em avoid file-name collisions for incoming files
.IC \fB\-x\fR
Begin server operation
.HE
.B ckermit
implements the
.B kermit
communications protocol.
It lets you communicate with other systems via modem or network,
and to exchange files with other systems that have also implemented the
.B kermit
protocol.
Unlike the
.B kermit
command also included with the \*(CO system,
.B ckermit
uses an interactive shell to remove some of the pain from
the process of exchanging files.
The name
.B ckermit
relects the fact that this command is written in the C language, and
so has been ported to many different machines and operating systems.
.PP
You can run
.B ckermit
in either \fIinteractive mode\fR or \fIcommand mode\fR.
Simply typing the command
.DM
	ckermit
.DE
.PP
invokes
.B ckermit
in interactive mode:
.B ckermit
displays a prompt, waits for your command, executes, then prompts you
for its next command.
Typing the command line plus one or more arguments
invokes
.B ckermit
in command mode:
.B ckermit
then reads the arguments from the command line and executes them.
After execution of the commands,
.B ckermit
returns to interactive mode.
.PP
.BR ckermit 's
command-line options name either actions or settings.
An action option tells
.B ckermit
to send a file, receive a file, or connect to a remote system.
The command line may contain no more than one action option.
A settings option changes one or more of the internal values that
control how
.B ckermit
operates; for example, one setting
option lets you set the baud rate of the serial port that
.B ckermit
will be using.
A command line can contain any number of settings options.
.SH "Command-Line Options"
.B ckermit
recognizes the following command-line options:
.IP "\fB\-a \fIfilename\fR" 0.75i
Give an alternate name to a file being transferred.
For example, the command
.DM
	ckermit -s foo -a bar
.DE
.sp \n(pDu
transmits the file
.B foo
to a remote system, but tells the remote system that the file is named
.BR bar .
Likewise, the command
.DM
	ckermit -ra baz
.DE
.sp \n(pDu
stores the first incoming file under the name
.BR baz .
.sp \n(pDu
If more than one file arrives or is sent,
only the first file is affected by the
.B \-a
option.
.IP "\fB\-b \fIbaudrate\fR"
Set the baud rate of the device to
.IR baudrate .
.IP \fB\-c\fR
Connect to serial port, and pass all subsequent typing to that port
To resume talking to your local system,
type the escape character followed by the letter `c'.
The escape character is set by default to \fB<ctrl-\e>\fR,
although you can change it if you wish.
.IP \fB\-d\fR
Debug mode \(em record debugging information in the file
.B debug.log
in the current directory.
.IP "\fB\-e \fIn\fR"
Set the length of the packet to
.I n ,
where
.I n
is a number between ten and about 1,000.
Lengths of 95 or greater require
that the implementation of
.B kermit
on the remote system
support the long-packet extension to the
.B kermit
protocol.
.IP \fB\-f\fR
Send a ``finish'' command to a remote server.
.IP "\fB\-g \fIfile\fR"
Ask a remote system to send
.I file
or
.IR files .
The file name must use the remote system's own syntax; you must quote all
characters normally expanded by the \*(CO shell, e.g.:
.DM
	ckermit -g x\e*.\e?
.DE
.IP \fB\-h\fR
Help \(em display a brief synopsis of the command-line options.
.IP \fB\-i\fR
The ``image'' option:
specify that the file being transmitted or received is an eight-bit
binary file, and therefore no conversion should be performed upon the
data being received.
.IP \fB\-k\fR
Passively receive file or files, copying them to standard output.
.IP "\fB\-l \fIdevice\fR"
Name the serial device to be used.
For example
.DM
	ckermit -l /dev/com2l
.DE
.sp \n(pDu
tells
.B ckermit
to use device
.BR /dev/com2l .
.IP \fB\-n\fR
Like
.B \-c,
but used after a protocol transaction has occurred.
You can use both
.B \-c
and
.B \-n
in the same command.
.IP "\fB\-p \fIx\fR"
Set parity, where
.I x
is one of
.BR e ,
.BR o ,
.BR m ,
.BR s ,
or
.B  n
(respectively, even, odd, mark, space, or none).
If parity is other than none, then
.B ckermit
uses the eighth-bit prefixing mechanism to transfer
binary data, provided the impementation of
.B kermit
on the remote system agrees.
The default parity is none.
.IP \fB\-q\fR
Quiet \(em suppress screen update during file transfer; for example,
this lets you transfer a file in the background.
.IP \fB\-r\fR
Receive a file or files.
Wait passively for files to arrive.
.IP "\fB\-s \fIfile\fR"
Send the specified
.I file
or
.IR files .
If
.I fn
is `-' then
.B ckermit
sends from standard input, which may come from a file:  
.DM
	ckermit -s - < foo.bar
.DE
.sp \n(pDu
or come from a parallel process:  
.DM
	ls -l | ckermit -s -
.DE
.sp \n(pDu
You cannot use this mechanism to send text typed from the keyboard.
To send a file named `-', precede it with a path name, e.g.:
.DM
	ckermit -s ./-
.DE
.IP \fB\-t\fR
Specify half duplex, line turnaround with XON as the handshake
character.
.IP \fB\-w\fR
Write-Protect \(em avoid file-name collisions for incoming files.
.IP \fB\-x\fR
Begin server operation.
This option can be used in either local or remote mode.
.PP
If 
.B ckermit
is in local mode, shows the progress of the file transfer.
A dot is printed for every four data
packets; other packets are shown by type (e.g., `S' for Send-Init); `T'
is printed when there's a timeout; and `%' is printed
for each retransmission.
.PP
During file transfer, you can type the following ``interrupt'' commands:
.IP \fB<ctrl-F>\fR 0.75i
Interrupt the current file and go on to the next, if any.
.IP \fB<ctrl-B>\fR
Interrupt the entire batch of files and terminate the transaction.
.IP \fB<ctrl-R>\fR
Resend the current packet.
.IP \fB<ctrl-A>\fR
Display a status report for the current transaction.
.PP
These interrupt characters differ from the ones used in other
implementations of
.B ckermit
to avoid conflict with the \*(CO shell's
interrupt characters.
.SH "Interactive Operation"
When you invoke
.B ckermit
in interactive mode, it displays the following prompt.
.DM
	C-Kermit>
.DE
.sp \n(pDu
Type any valid
.B ckermit
command; the set of valid commands is described below.
.B ckermit
executes the command and then prompts you for another.
The process continues until you tell it to quit.
.PP
Commands begin with a keyword, normally an English verb, such as
.BR send .
You can abbreviate any keyword, as long as you type enough
characters to distinguish it from all other keywords.
Certain commonly used keywords (e.g.,
.BR send ,
.BR receive ,
.BR connect )
have special non-unique abbreviations (respectively, `s',
`r', and `c').
.PP
Certain characters have special functions in interactive commands:
.IP \fB?\fR 0.75i
Print a message that
explains what is possible or expected at the current point
within a command.
Depending upon the context, the message may be a brief phrase,
a menu of keywords, or a list of files.
.IP \fB<esc>\fR
Request completion of the current keyword
or file name, or insertion of a default value.
.B ckermit
will beep
if the requested operation fails.
.B <tab>
does the same thing.
.IP \fB<del>\fR
Delete the previous character from the command.
.B <backspace>
does the same thing.
.IP \fB<ctrl-W>\fR
Erase the rightmost word from the command line.
.IP \fB<ctrl-U>\fR
Erase the entire command.
.IP \fB<ctrl-R>\fR
Redisplay the current command.
.IP \fB<space>\fR
Delimit fields (keywords, filenames, numbers) within a
command.
.IP \fB<return>\fR
Execute the command.
.IP \fB\e\fR
Insert any of the above characters into the command, literally.
To enter a literal backslash, type two backslashes in a row (\e\e).
Typing one backslash immediately \fB<return>\fR lets you
continue the command on the next line.
.PP
.B ckermit
recognizes the following interactive commands:
.IP "\fB! \fIcommand\fR" 0.75i
Execute a shell command.
A space must follow the \fB!\fR.
.IP "\fB%\fR"
A comment.
.B ckermit
ignores everything that follows the \fB%\fR.
.IP \fBbye\fR
Terminate and log out a remote
.B kermit
server.
.IP \fBclose\fR
Close a log file.
.IP \fBconnect\fR
Connect to the remote system.
.IP "\fBcwd \fIdirectory\fR
Change the working directory to
.IR directory .
.IP \fBdial\fR
Dial a telephone number.
.IP \fBdirectory\fR
Display a directory listing.
.IP \fBecho\fR
Display arguments literally.
Useful in take-command files.
.IP \fBexit\fR
Exit from the program, closing any open logs.
.IP \fBfinish\fR
Instruct a remote 
.B kermit
server to exit, but not log out.
.IP \fBget\fR
Get files from a remote 
.B kermit
server.
.IP \fBhangup\fR
Hang up the telephone.
.IP \fBhelp\fR
Display a help message for a given command.
.IP \fBlog\fR
Open a log file \(em debugging, packet, session, transaction.
.IP \fBquit\fR
Same as
.BR exit .
.IP \fBreceive\fR
Passively wait for files to arrive.
.IP \fBremote\fR
Issue file-management commands to a remote
.B kermit
server.
.IP \fBscript\fR
Execute a login script with a remote system.
.IP "\fBsend \fIfile\fR
Send \fIfile\fR to the remote
.B kermit
server.
.IP \fBserver\fR
Begin server operation.
.IP \fBset\fR
Set various internal parameters.
.IP \fBshow\fR
Display values of parameters, program version, etc.
.IP \fBspace\fR
Display current disk space usage.
.IP \fBstatistics\fR
Display statistics about most recent transaction.
.IP \fBtake\fR
Execute commands from a file.
.PP
Interactive 
.B ckermit
accepts commands from files as well as from the keyboard.
Upon startup,
.B ckermit
looks for the file
.B .kermrc
first in directory
.B $HOME
and then in the current directory;
if it finds the file, it executes all commands it finds therein.
These commands must be in interactive format.
Command files may be nested to any reasonable depth.
.SH "The set Command"
As noted above, the
.B set
command lets you set the internal parameters by which
.B ckermit
operates.
The
.B set
command recognizes the following arguments:
.IP \fBblock-check\fR 0.75i
Level of packet error detection.
.IP \fBdelay\fR
Time to wait before sending first packet.
.IP \fBduplex\fR
Specify which side echoes during connect mode.
.IP \fBescape-character\fR
Character to prefix
.I "escape commands"
during connect mode.
.IP \fBfile\fR
Set various file parameters.
.IP "\fBflow-control\fR"
Communication line full-duplex flow control.
.IP \fBhandshake\fR
Communication line half-duplex turnaround character.
.IP \fBline\fR
Communication-line device name.
.IP \fBmodem-dialer\fR
Type of modem-dialer on communication line.
.IP \fBparity\fR
Communication line character parity.
.IP \fBprompt\fR
Change the 
.B ckermit
program's prompt.
.IP \fBreceive\fR
Set various parameters for inbound packets.
.IP \fBretry\fR
Set the packet retransmission limit.
.IP \fBsend\fR
Set various parameters for outbound packets.
.IP \fBspeed\fR
Communication line speed.
.SH "Remote Commands"
.B ckermit
also has a suite of commands that are sent to the remote system for
execution.
They are as follows:
.IP \fBcwd\fR 0.75i
Change remote working directory (also, \fBremote cd\fR).
.IP \fBdelete\fR
Delete remote files.
.IP \fBdirectory\fR
Display a listing of remote file names.
.IP \fBhelp\fR
Request help from a remote server.
.IP \fBhost\fR
Issue a command to the remote host in its own command language.
.IP \fBspace\fR
Display current disk space usage on remote system.
.IP \fBtype\fR
Display a remote file on your screen.
.IP \fBwho\fR
Display the users logged in to the remote system,
or get information about a user.
.SH Files
\fB.kermrc\fR \(em \fBckermit\fR initialization commands
.SH "See Also"
.Xr "commands," commands
.Xr "kermit," kermit
.Xr "uucp" uucp
.SH Notes
.II "Columbia University"
The
.B kermit
protocol was developed at the Columbia University Center for
Computing Activities.
.B ckermit
is copyright \(co by the Trustees of Columbia University.
.PP
On some remote systems, the command
.B hangup
does not hang up the telephone properly.
If this occurs, add the following macro to file
.BR $HOME/.kermrc :
.DM
	define myhangup sleep 2,output +++,sleep 2,output ATH0\e13
.DE
.PP
This create a macro named
.BR myhangup ,
which you can invoke to hang up the remote telephone.
To test the proper load of the macro, type the following at the
.B ckermit
prompt:
.DM
	show macro myhangup
.DE
.PP
It should show the command sequence.
If it is intact, you can execute the new
.B hangup
command by typing
.BR myhangup .
.PP
Please note that
.B ckermit
is provided in binary form per the licensing terms set forth by its copyright
holders.
It is distributed as a service to \*(CO customers, as is.
It is not supported by Mark Williams Company.
.I "Caveat utilitor."
