--- /dev/null
+.\" @(#) kermit.1 8.0.211 2004/04/10 Columbia University
+.TH KERMIT 1 "APRIL 2004" "User Manuals"
+.na
+.SH NAME
+kermit \-
+.B C\(hyKermit 8.0:
+transport\(hy and platform\(hyindependent
+interactive and scriptable communications software.
+.IP
+
+This document is intended to give the beginner sufficient information to make
+basic (if not advanced) use of C\(hyKermit 8.0. Although it might be rather long
+for a Unix manual page, it's still far shorter than the C\(hyKermit manual, which
+should be consulted for advanced topics such as customization, character\(hysets,
+scripting, etc. We also attempt to provide a clear structural overview of
+C\(hyKermit's many capabilities, functional areas, states, and modes and their
+interrelation, that should be helpful to beginners and veterans alike, as well
+as to those upgrading to version 8.0 from earlier releases.
+.PP
+This document is also available as a Web page at:
+.IP
+http://www.columbia.edu/kermit/ckututor.html
+.SH DESCRIPTION
+C\(hyKermit is an all\(hypurpose communications software package from the Kermit
+Project at Columbia University that:
+.PP
+.nf
+\(bu Is portable to many platforms, Unix and non\(hyUnix alike.
+.br
+\(bu Can make both serial and network connections.
+.br
+\(bu Can conduct interactive terminal sessions over its connection.
+.br
+\(bu Can transfer text or binary files over the same connection.
+.br
+\(bu Can convert character sets in the terminal session.
+.br
+\(bu Can convert character sets during text\(hyfile file transfer.
+.br
+\(bu Is customizable in every aspect of its operation.
+.fi
+.PP
+C\(hyKermit is a modem program, a Telnet client, an Rlogin client, an FTP
+client, an HTTP client, and on selected platforms, also an X.25 client. It
+can make its own secure Internet connections using IETF\(hyapproved security
+methods including Kerberos IV, Kerberos V, SSL/TLS, and SRP and it can also
+make SSH connections through your external SSH client application. It can
+be the far\(hyend file\(hytransfer or client/server partner of your desktop
+Kermit client. It can also accept incoming dialed and network connections.
+It can even be installed as an Internet service on its own standard TCP
+socket, 1649 [RFC2839, RFC2840].
+.PP
+And perhaps most important, everything you can do "by hand" (interactively)
+with C\(hyKermit, can be "scripted" (automated) using its built\(hyin
+cross\(hyplatform transport\(hyindependent script programming language, which
+happens to be identical to its interactive command language.
+.PP
+This manual page offers an overview of C\(hyKermit 8.0 for Unix ("Unix" is an
+operating system family that includes AIX, DG/UX, FreeBSD, HP\(hyUX, IRIX,
+Linux, Mac OS X, NetBSD, OpenBSD, Open Server, Open Unix, QNX, Solaris,
+SunOS, System V R3, System V R4, Tru64 Unix, Unixware, Xenix, and many
+others). For thorough coverage, please consult the published C\(hyKermit
+manual and supplements (see DOCUMENTATION below). For further information
+about C\(hyKermit, Kermit software for other platforms, and Kermit manuals,
+visit the Kermit Project website:
+.PP
+ http://www.columbia.edu/kermit/
+.PP
+This is a longer\(hythan\(hyaverage manual page, and yet it barely scratches the
+surface. Don't be daunted. C\(hyKermit is a large and complex package,
+evolving over decades of practice and experience, but that doesn't mean
+it's hard to learn or use. Its most commonly used functions are explained
+here with pointers to additional information elsewhere.
+.SH SYNOPSIS
+.B kermit [
+.I filename
+.B ] [
+.I options
+.B ] [ {=,\-\-,+}
+.I text
+.B ] ]
+.PP
+or:
+.PP
+.B kermit
+.I URL
+.PP
+If the first command\(hyline argument is the name of a file, interactive\(hymode
+commands are executed from the file. The '=' (or "\-\-") argument tells
+Kermit not to parse the remainder of the command line, but to make the
+words following '=' available as \e%1, \e%2, ... \e%9. The "+" argument is
+like "=" but for use in "kerbang scripts" (explained below). A second
+command\(hyline format allows the one and only argument to be a Telnet, FTP,
+HTTP, or IKSD URL.
+.PP
+Order of execution:
+.TP
+ 1.
+The command file (if any).
+.TP
+.nf
+ 2.
+The initialization file, if any, unless suppressed with \-Y.
+.fi
+.TP
+ 3.
+The customization file (if it is executed by the initialization file).
+.TP
+ 4.
+The command\(hyline URL (if any, and if so, execution stops here).
+.TP
+ 5.
+Command\(hyline options (if any).
+.TP
+ 6.
+Interactive commands.
+.PP
+Some command\(hyline options can cause actions (such as \-s to send a file);
+others just set parameters. If any action options are included on the
+command line, Kermit exits when finished unless also given the \-S ("stay")
+option. If no action options are given, no initialization or command files
+contained an EXIT or QUIT command, and no fatal errors occurred, Kermit
+issues its prompt and waits for you to type commands.
+.IP
+Bear in mind that C\(hyKermit can be built with selected features
+disabled, and also that certain features are not available on all
+platforms. For example, C\(hyKermit can't be built with TCP/IP
+support on a platform that does not have TCP/IP header files and
+libraries (and even if Kermit does include TCP/IP support, it
+can't be used to make TCP/IP connections on a computer that does
+not have a TCP/IP stack installed). If your version of lacks
+C\(hyKermit a feature mentioned here, use its SHOW FEATURES command to
+see what might have been excluded.
+.PP
+C\(hyKermit has three kinds of commands: regular single\(hyletter command\(hyline
+options, extended\(hyformat command\(hyline options, and interactive commands.
+.PP
+Like most Unix commands, C\(hyKermit can be be given options on the command
+line. But C\(hyKermit also can be used interactively by giving it commands
+composed of words, which are more intuitive than cryptic command\(hyline
+options, and more flexible too. In other words, you don't have to use
+C\(hyKermit's command\(hyline options, but they are available if you want to. (By
+the same token, you don't have to use its interactive commands either \(hy\(hy
+you can use either or both in any combination.)
+.PP
+C\(hyKermit is generally installed in the PATH as "kermit", and therefore is
+invoked by typing the word "kermit" (lowercase) at the shell prompt, and
+then pressing the Return or Enter key. If you wish to include command\(hyline
+options, put them after the word "kermit" but before pressing Return or
+Enter, separated by spaces, for example:
+.PP
+ $ kermit \-s ckermit.tar.gz
+.PP
+('$' is the shell prompt; "kermit \-s ckermit.tar.gz" is what you type,
+followed by Return or Enter.)
+.SH OPTIONS
+Here is a list of C\(hyKermit's single\(hyletter command\(hyline options, which
+start with a single dash (\-), in ASCII ("alphabetical") order. Alphabetic
+case is significant (\-A is not the same as \-a). Action options are
+tagged "ACTION".
+.TP
+\-0
+(digit zero) 100% transparent Connect state for
+"in\(hythe\(hymiddle" operation: 8 bits, no parity, no
+escape character, everything passes through.
+.TP
+\-8
+(digit eight) Connection is 8\(hybit clean (this is the
+default in C\(hyKermit 8.0). Equivalent to the EIGHTBIT
+command, which in turn is a shortcut for SET TERMINAL
+BYTESIZE 8, SET COMMAND BYTESIZE 8, SET PARITY NONE.
+.TP
+\-9 arg
+(digit nine) Make a connection to an FTP server.
+Equivalent to the FTP OPEN command.
+Argument: IP\(hyaddress\(hyor\(hyhostname[:optional\(hyTCP\(hyport].
+NOTE: C\(hyKermit also has a separate FTP command\(hyline
+personality, with regular FTP\(hylike command\(hyline
+syntax. More about this below.
+.TP
+\-A
+Kermit is to be started as an Internet service (IKSD)
+(only from inetd.conf).
+.TP
+\-B
+Kermit is running in Batch or Background (no
+controlling terminal). To be used in case Kermit
+doesn't automatically sense its background status.
+Equivalent to the SET BACKGROUND ON command.
+.TP
+\-C arg
+Interactive\(hymode Commands to be executed.
+Argument: Commands separated by commas, list in
+doublequotes.
+.TP
+\-D arg
+Delay before starting to send in Remote mode.
+Equivalent to the SET DELAY command.
+Argument: Number of seconds.
+.TP
+\-E
+Exit automatically when connection closes. Equivalent
+to SET EXIT ON\-DISCONNECT ON.
+.TP
+\-F arg
+Use an open TCP connection.
+Argument: Numeric file descriptor of open TCP
+connection.
+Also see: \-j, \-J.
+.TP
+\-G arg
+(ACTION) Get file(s) from server, send contents to standard
+output, which normally would be piped to another
+process.
+Argument: Remote file specification, in quotes if it
+contains metacharacters.
+Also see: \-g, \-k.
+.TP
+\-H
+Suppress program startup Herald and greeting.
+.TP
+\-I
+Tell Kermit it has a reliable connection, to force streaming to be used where
+it normally would not be. Equivalent to the SET RELIABLE ON command.
+.TP
+\-J arg
+(ACTION) "Be like Telnet." Like \-j but implies \-E. Argument: IP
+hostname/address optionally followed by service. NOTE: C\(hyKermit also has a
+separate Telnet command\(hyline personality, with regular Telnet\(hylike
+command\(hyline syntax. More about this below.
+.TP
+\-L
+Recursive directory descent for files in \-s option.
+.TP
+\-M arg
+My user name (for use with Telnet, Rlogin, FTP, etc).
+Equivalent to the SET LOGIN USER command.
+Argument: Username string.
+.TP
+\-O
+(ACTION) (Uppercase letter O) Be a server for One command only.
+Also see: \-x.
+.TP
+\-P
+Don't convert file (Path) names of transferred files.
+Equivalent to SET FILE NAMES LITERAL.
+.TP
+\-Q
+Quick Kermit protocol settings. Equivalent to the FAST
+command. This is the default in C\(hyKermit 7.0 and later.
+.TP
+\-R
+Remote\(hyonly (this just makes IF REMOTE true).
+.TP
+\-S
+Stay (enter command parser after action options).
+.TP
+\-T
+Force Text mode for file transfer; implies \-V.
+Equivalent to SET TRANSFER MODE MANUAL, SET FILE TYPE TEXT.
+.TP
+\-V
+Disable automatic per\(hyfile text/binary switching.
+Equivalent to SET TRANSFER MODE MANUAL.
+.TP
+\-Y
+Skip (don't execute) the initialization file.
+.TP
+\-a arg
+As\(hyname for file(s) in \-s, \-r, or \-g.
+Argument: As\(hyname string (alternative filename). When
+receiving files, this can be a directory name.
+.TP
+\-b arg
+Speed for serial device. Equivalent to SET SPEED.
+Argument: Numeric Bits per second for serial
+connections.
+.TP
+\-c
+(ACTION) Enter Connect state before transferring files.
+.TP
+\-d
+Create a debug.log file with detailed debugging
+information (a second \-d adds timestamps). Equivalent
+to LOG DEBUG but takes effect sooner.
+.TP
+\-e arg
+Maximum length for incoming Kermit file\(hytransfer
+packets. Equivalent to SET RECEIVE PACKET\-LENGTH.
+Argument: Length in bytes.
+.TP
+\-f
+(ACTION) Send a FINISH command to a Kermit server.
+.TP
+\-g arg
+Get file(s) from a Kermit server.
+Argument: File specification on other computer, in
+quotes if it contains metacharacters. Equivalent to
+GET. Also see: \-a, \-G, \-r.
+.TP
+\-h
+(ACTION) Print Help text for single\(hyletter command\(hyline options
+(pipe thru 'more' to prevent scrolling).
+.TP
+\-i
+Force binary (Image) mode for file transfer; implies
+\-V. Equivalent to SET TRANSFER MODE MANUAL, SET FILE
+TYPE BINARY.
+.TP
+\-j arg
+Make a TCP/IP connection.
+Argument: IP host name/address and optional service
+name or number. Equivalent to the TELNET command.
+Also see: \-J, \-F.
+.TP
+\-k
+(ACTION) Receive file(s) to standard output, which normally
+would be piped to another process.
+Also see: \-r, \-G.
+.TP
+\-l arg
+(Lowercase letter L) Make a connection on the given
+serial communications device. Equivalent to the SET
+LINE (SET PORT) command.
+Argument: Serial device name, e.g. /dev/ttyS0.
+.TP
+\-m arg
+Modem type for use with the \-l device. Equivalent to
+the SET MODEM TYPE command.
+Argument: Modem name as in SET MODEM TYPE command,
+e.g. "usrobotics".
+.TP
+\-n
+(ACTION) Enter Connect state after transferring files (historical).
+.TP
+\-p arg
+Parity. Equivalent to the SET PARITY command.
+Argument: One of the following: e(ven), o(dd), m(ark),
+n(one), s(pace).
+.TP
+\-q
+Quiet (suppress most messages). Equivalent to SET QUIET ON.
+.TP
+\-r
+(ACTION) Receive file(s). Equivalent to the RECEIVE command.
+Argument: (none, but see \-a)
+.TP
+\-s arg
+Send file(s).
+Argument: One or more local file specifications.
+Equivalent to the SEND command.
+Also see: \-a.
+.TP
+\-t
+(Historical) Xon (Ctrl\-Q) Turnaround character for
+half\(hyduplex connections (used on serial linemode
+connections to old mainframes). Equivalent to SET
+DUPLEX HALF, SET HANDSHAKE XON.
+.TP
+\-v arg
+Window size for Kermit protocol (ignored when
+streaming). Equivalanet to SET WINDOW\-SIZE.
+Argument: Number, 1 to 32.
+.TP
+\-w
+Incoming files Write over existing files. Equivalent
+to SET FILE COLLISION OVERWRITE.
+.TP
+\-x
+(ACTION) Enter server mode. Equivalent to the SERVER command.
+Also see: \-O.
+.TP
+\-y arg
+Alternative initialization file.
+Argument: Filename.
+.TP
+\-z
+Force foreground behavior. To be used in case Kermit
+doesn't automatically sense its foreground status.
+Equivalent to the SET BACKGROUND OFF command.
+.PP
+Extended command\(hyline options (necessary because single\(hyletter ones are
+about used up) start with two dashes (\-\-), with words rather than single
+letters as option names. If an extended option takes an argument, it is
+separated from the option word by a colon (:). Extended options include:
+
+.TP
+ \-\-bannerfile:filename
+File to display upon startup or IKSD login.
+.TP
+ \-\-cdfile:filename
+File to be sent for display to the client when
+server changes directory (filename is relative to
+the changed\(hyto directory).
+.TP
+ \-\-cdmessage:{on,off}
+Enable/disable the server CD message feature.
+.TP
+ \-\-help
+Prints usage message for extended options.
+.TP
+ \-\-helpfile:filename
+Designates a file containing custom text to
+replace the top\(hylevel HELP command.
+.TP
+ \-\-nointerrupts
+Disables keyboard interrupts.
+.TP
+ \-\-noperms
+Disables the Kermit protocol file Permissions
+attribute, to prevent transmission of file
+permissions (protection) from sender to receiver.
+.TP
+ \-\-version
+(ACTION) C\(hyKermit prints its version number.
+.PP
+Plus several other IKSD\(hyOnly options described at:
+.PP
+ http://www.columbia.edu/kermit/iksd.html
+.PP
+See the file\(hytransfer section for examples of command\(hyline invocation.
+.SH COMMAND LANGUAGE
+C\(hyKermit's interactive command language is the subject of a 622\(hypage book
+and another several hundred pages of updates, far too much for a manual
+page. But it's not hard to get started. At the shell prompt, just type
+"kermit" to get C\(hyKermit's interactive command prompt:
+.PP
+.nf
+ $ kermit
+ (/current/directory) C\-Kermit>
+.fi
+.PP
+Begin by typing "help" (and then press the Return or Enter key) for a
+top\(hylevel overview, read it, and go from there. Your second command should
+probably be "intro" (introduction). Note the prompt shows your current
+directory (unless you tell Kermit to prompt you with something else).
+.PP
+Interactive commands are composed mainly of regular English words, usually
+in the form of imperative sentences, such as:
+.PP
+ send oofa.txt
+.PP
+which tells Kermit to send (transfer) the file whose name is oofa.txt, or:
+.PP
+ set transfer mode automatic
+.PP
+which sets Kermit's "transfer mode" to "automatic" (whatever that means).
+.PP
+While typing commands, you can abbreviate, ask for help (by pressing the
+"?" key anywhere in a command), complete keywords or filenames (with the
+Tab or Esc key), and edit your typing with Backspace or Delete, Ctrl\-W,
+Ctrl\-U, etc. You can also recall previous commands, save your command
+history, and who knows what else. Give the INTRO command for details.
+.PP
+C\(hyKermit has hundreds of commands, and they can be issued in infinite
+variety and combinations, including commands for:
+.nf
+.PP
+\(bu Making connections (SET LINE, DIAL, TELNET, SSH, FTP, ...)
+.br
+\(bu Breaking connections (HANGUP, CLOSE)
+.br
+\(bu Transferring files (SEND, GET, RECEIVE, MOVE, RESEND, ...)
+.br
+\(bu Establishing preferences (SET)
+.br
+\(bu Displaying preferences (SHOW)
+.br
+\(bu Managing local files (CD, DELETE, MKDIR, DIR, RENAME, TYPE, ...)
+.br
+\(bu Managing remote files (RCD, RDEL, RMKDIR, RDIR, ...)
+.br
+\(bu Using local files (FOPEN, FCLOSE, FREAD, FWRITE)
+.br
+\(bu Programming (TAKE, DEFINE, IF, FOR, WHILE, SWITCH, DECLARE, ...)
+.br
+\(bu Interacting with the user (ECHO, ASK, ...)
+.br
+\(bu Interacting with a remote computer (INPUT, OUTPUT, ...)
+.br
+\(bu Interacting with local programs (RUN, EXEC, PTY, ...)
+.br
+\(bu Logging things (LOG SESSION, LOG PACKETS, LOG DEBUG, ...)
+.PP
+.fi
+And of course QUIT or EXIT to get out and HELP to get help, and for
+programmers: loops, decision making, variables, arrays, associative arrays,
+integer and floating point arithmetic, macros, built\(hyin and user\(hydefined
+functions, string manipulation, pattern matching, block structure, scoping,
+recursion, and all the rest. To get a list of all C\(hyKermit's commands, type
+a question mark (?) at the prompt. To get a description of any command,
+type HELP followed by the name of the command, for example:
+.PP
+ help send
+.PP
+The command interruption character is Ctrl\-C (hold down the Ctrl key and
+press the C key).
+.PP
+The command language "escape character", used to introduce variable names,
+function invocations, and so on, is backslash (\). If you need to include a
+literal backslash in a command, type two of them, e.g.:
+.PP
+ get c:\ek95\ek95custom.ini
+.SS Command Files, Macros, and Scripts
+A file containing Kermit commands is called a Kermit command file or Kermit
+script. It can be executed with Kermit's TAKE command:
+.PP
+ (/current/dir) C\-Kermit> take commandfile
+.PP
+(where "commandfile" is the name of the command file). Please don't pipe a
+command file into Kermit's standard input (which might or might not work);
+if you have Kermit commands in a file, tell Kermit to TAKE the file.
+.PP
+In Unix only, a Kermit command file can also be executed directly by
+including a "kerbang" line as the first line of the file:
+.PP
+ #!/usr/local/bin/kermit +
+.PP
+That is, a top line that starts with "#!", followed immediately by the full
+path of the Kermit executable, and then, if the Kermit script is to be
+given arguments on the command line, a space and a plus sign. The script
+file must also have execute permission:
+.PP
+ chmod +x commandfile
+.PP
+Except for the " +" part, this is exactly the same as you would do for a
+shell script, a Perl script, etc. Here's a simple but useless example
+script that regurgitates its arguments (up to three of them):
+.PP
+ #!/usr/local/bin/kermit +
+ if defined \e%1 echo "Argument 1: \e%1"
+ if defined \e%2 echo "Argument 2: \e%2"
+ if defined \e%3 echo "Argument 3: \e%3"
+ if defined \e%4 echo "etc..."
+ exit
+.PP
+If this file is stored in your current directory as "commandfile", then:
+.PP
+ ./commandfile one two three four five
+.PP
+prints:
+.PP
+ Argument 1: one
+ Argument 2: two
+ Argument 3: three
+ etc...
+.PP
+This illustrates the basic structure of a standalone Kermit script: the
+"kerbang line", then some commands. It should end with "exit" unless you
+want the Kermit prompt to appear when it is finished. \e%1 is the first
+argument, \e%2 the second, and so on.
+.PP
+You can also create your own commands by defining named macros composed of
+other Kermit commands (or macros). For example:
+.PP
+.nf
+ define mydelete {
+ local trash
+ assign trash \ev(home)trashcan/
+ if not defined \e%1 end 1 "Delete what?"
+ if wild \e%1 {
+ end 1 "Deleting multiple files is too scary"
+ }
+ if not exist \e%1 end 1 "I can't find \e%1"
+ if not directory \em(trash) {
+ mkdir \em(trash)
+ if fail end 1 "No trash can"
+ }
+ rename /list \e%1 \em(trash)
+ }
+ define myundelete {
+ local trash
+ assign trash \ev(home)trashcan/
+ if not defined \e%1 end 1 "Undelete what?"
+ if wild \e%1 {
+ end 1 "Undeleting multiple files is too hard"
+ }
+ if not directory \em(trash) end 1 "No trash can"
+ if not exist \em(trash)\e%1 {
+ end 1 "I can't find \e%1 in trash can"
+ }
+ rename /list \em(trash)\e%1 .
+ }
+.PP
+.fi
+These sample macros are not exactly production quality (they don't handle
+filenames that include path segments, they don't handle multiple files,
+etc), but you get the idea: you can pass arguments to macros, and they can
+check them and make other kinds of decisions. If you put the above lines
+into your initialization or customization file (explained below), you'll
+have MYDELETE and MYUNDELETE commands available every time you start
+Kermit, at least as long as you don't suppress execution of the
+initialization file. (Exercise for the reader: Make these macros generally
+useful: remove limitations, add trashcan display, browsing, emptying, etc.)
+.PP
+Kerbang scripts execute without the initialization file. This to keep them
+portable and also to make them start faster. If you want to write Kerbang
+scripts that depend on the initialization file, include the command
+.PP
+ take \ev(home).kermrc
+.PP
+at the desired spot in the script. By the way, \ev(xxx) is a built\(hyin
+variable (xxx is the variable name, "home" in this case). To see what
+built\(hyin variables are available, type "show variables" at the C\(hyKermit
+prompt. To see what else you can show, type "show ?". \em(xxx) is a user
+defined variable (strictly speaking, it is a macro used as a variable).
+.SS Command List
+C\(hyKermit has more than 200 top\(hylevel commands, and some of these, such as
+SET, branch off into hundreds of subcommands of their own, so it's not
+practical to describe them all here. Instead, here's a concise list of the
+most commonly used top\(hylevel commands, grouped by category. To learn about
+each command, type "help" followed by the command name, e.g. "help set".
+Terms such as Command state and Connect state are explained in subsequent
+sections.
+.PP
+Optional fields are shown in [ brackets ]. "filename" means the
+name of a single file. filespec means a file specification that is allowed
+to contain wildcard characters like '*' to match groups of files. options
+are (optional) switches like /PAGE, /NOPAGE, /QUIET, etc, listed in the
+HELP text for each command. Example:
+.PP
+.nf
+ send /recursive /larger:10000 /after:\-1week /except:*.txt *
+.fi
+.PP
+which can be read as "send all the files in this directory and all the ones
+underneath it that are larger than 10000 bytes, no more than one week old,
+and whose names don't end with ".txt".
+.SS
+Basic Commands
+.RS
+.TP
+HELP
+Requests top\(hylevel help.
+.TP
+HELP command
+Requests help about the given command.
+.TP
+INTRODUCTION
+Requests a brief introduction to C\(hyKermit.
+.TP
+LICENSE
+Displays the C\(hyKermit software copyright and license.
+.TP
+VERSION
+Displays C\(hyKermit's version number.
+.TP
+EXIT [ number ]
+Exits from Kermit with the given
+status code. Synonyms: QUIT, E, Q.
+.TP
+TAKE filename [ parameters... ]
+Executes commands from the given
+.TP
+LOG item [ filename ]
+Keeps a log of the given item in the given file.
+.TP
+[ DO ] macro [ parameters... ]
+Executes commands from the given macro.
+.TP
+SET parameter value
+Sets the given parameter to the given value.
+.TP
+SHOW category
+Shows settings in a given category.
+.TP
+STATUS
+Tells whether previous command succeeded or failed.
+.TP
+DATE [ date\(hyand/or\(hytime ]
+Shows current date\(hytime or interprets given date\(hytime.
+.TP
+RUN [ extern\(hycommand [ parameters... ]
+Runs the given external command. Synonym: !.
+.TP
+EXEC [ extern\(hycommand [ params... ]
+Kermit overlays itself with the given command.
+.TP
+SUSPEND
+Stops Kermit and puts it in the background. Synonym: Z.
+.RE
+.SS
+Local File Management
+.RS
+.TP
+TYPE [ options ] filename
+Displays the contents of the given file.
+.TP
+MORE [ options ] filename
+Equivalent to TYPE /PAGE (pause after each screenful).
+.TP
+CAT [ options ] filename
+Equivalent to TYPE /NOPAGE.
+.TP
+HEAD [ options ] filename
+Displays the first few lines of a given file.
+.TP
+TAIL [ options ] filename
+Displays the last few lines of a given file.
+.TP
+GREP [ options ] pattern filespec
+Displays lines from files that match
+the pattern. Synonym: FIND.
+.TP
+DIRECTORY [ options ] [filespec ]
+Lists files (built\(hyin, many options).
+.TP
+LS [ options ] [ filespec ]
+Lists files (runs external "ls" command).
+.TP
+DELETE [ options ] [ filespec ]
+Deletes files. Synonym: RM.
+.TP
+PURGE [ options ] [ filespec ]
+Removes backup (*.~n~) files.
+.TP
+COPY [ options ] [ filespecs... ]
+Copies files. Synonym: CP.
+.TP
+RENAME [ options ] [ filespecs... ]
+Renames files. Synonym: MV.
+.TP
+CHMOD [ options ] [ filespecs... ]
+Changes permissions of files.
+.TP
+TRANSLATE filename charsets [ filename ]
+Converts file's character set. Synonym: XLATE.
+.TP
+CD
+Changes your working directory to your home directory.
+.TP
+CD directory
+Changes your working directory to the one given.
+.TP
+CDUP
+Changes your working directory one level up.
+.TP
+PWD
+Displays your working directory.
+.TP
+BACK
+Returns to your previous working directory.
+.TP
+MKDIR [ directory ]
+Creates a directory.
+.TP
+RMDIR [ directory ]
+Removes a directory.
+.RE
+.SS
+Making Connections
+.RS
+.TP
+SET LINE [ options ] devicename
+Opens the named serial port. Synonym: SET PORT.
+.TP
+OPEN LINE [ options ] devicename
+Same as SET LINE. Synonym: OPEN PORT.
+.TP
+SET MODEM TYPE [ name ]
+Tells Kermit what kind of modem is on the port.
+.TP
+DIAL [ number ]
+Tells Kermit to dial the given phone number with the modem.
+.TP
+REDIAL
+Redials the most recently dialed phone number.
+.TP
+ANSWER
+Waits for and answers an incoming call on the modem.
+.TP
+AUTHENTICATE [ parameters... ]
+Performs secure authentication on a TCP/IP connection.
+.TP
+SET NETWORK TYPE { TCP/IP, X.25, ... }
+Selects network type for subsequent SET HOST commands.
+.TP
+SET HOST [ options ] host [ port ]
+Opens a network connection to the given host and port.
+.TP
+SET HOST * port
+Waits for an incoming TCP/IP connection on the given port.
+.TP
+TELNET [ options ] host
+Opens a Telnet connection to the host and enters Connect state.
+.TP
+RLOGIN [ options ] host
+Opens an Rlogin connection to the host and enters Connect state.
+.TP
+IKSD [ options ] host
+Opens a connection to an Internet Kermit Service.
+.TP
+SSH [ options ] host
+Opens an SSH connection to the host and enters Connect state.
+.TP
+FTP OPEN host [ options ]
+Opens an FTP connection to the host.
+.TP
+HTTP [ options ] OPEN host
+Opens an HTTP connection to the host.
+.TP
+PTY external\(hycommand
+Runs the command on a pseudoterminal as if it were a connection.
+.TP
+PIPE external\(hycommand
+Runs the command through a pipe as if it were a connection.
+.RE
+.SS
+Using Connections
+.RS
+.TP
+CONNECT [ options ]
+Enters Connect (terminal) state. Synonym: C.
+.TP
+REDIRECT command
+Redirects the given external command over the connection.
+.TP
+TELOPT command
+Sends a Telnet protocol command (Telnet connections only).
+.TP
+Ctrl\-\eC
+"Escapes back" from Connect state to Command state.
+.TP
+Ctrl\-\eB
+(In Connect state) Sends a BREAK signal (serial or Telnet).
+.TP
+Ctrl\-\e!
+(In Connect state) Enters inferior shell; "exit" to return.
+.TP
+Ctrl\-\e?
+(In Connect state) Shows a menu of other escape\(hylevel options.
+.TP
+Ctrl\-\eCtrl\-\e
+(In Connect state) Type two
+Ctrl\-Backslashes to send one of them.
+.TP
+SET ESCAPE [ character ]
+Changes Kermit's Connect\(hystate escape character.
+.RE
+.SS
+Closing Connections
+.RS
+.TP
+HANGUP
+Hangs up the currently open
+serial\(hyport or network connection.
+.TP
+CLOSE
+Closes the currently open
+serial\(hyport or network connection.
+.TP
+SET LINE (with no devicename)
+Closes the currently open
+serial\(hyport or network connection.
+.TP
+SET HOST (with no hostname)
+Closes the currently open serial\(hyport or network connection.
+.TP
+FTP CLOSE
+Closes the currently open FTP connection.
+.TP
+HTTP CLOSE
+Closes the currently open HTTP connection.
+.TP
+EXIT
+Also closes all connections. Synonym: QUIT.
+.TP
+SET EXIT WARNING OFF
+Suppresses warning about open connections on exit or close.
+.RE
+.SS
+File Transfer
+.RS
+.TP
+SEND [ options ] filename [ as\(hyname ]
+Sends the given file. Synonym: S.
+.TP
+SEND [ options ] filespec
+Sends all files that match.
+.TP
+RESEND [ options ] filespec
+Resumes an interupted SEND from the point of failure.
+.TP
+RECEIVE [ options ] [ as\(hyname ]
+Waits passively for files to arrive. Synonym: R.
+.TP
+LOG TRANSACTIONS [ filename ]
+Keeps a record of file transfers.
+.TP
+FAST
+Use fast file\(hytransfer settings (default).
+.TP
+CAUTIOUS
+Use cautious and less fast file\(hytransfer settings.
+.TP
+ROBUST
+Use ultra\(hyconservative and slow file\(hytransfer settings.
+.TP
+STATISTICS [ options ]
+Gives statistics about the most recent file transfer.
+.TP
+WHERE
+After transfer: "Where did my files go?".
+.TP
+TRANSMIT [ options ] [ofilename ]
+Sends file without protocol. Synonym: XMIT.
+.TP
+LOG SESSION [ filename ]
+Captures remote text or files without protocol.
+.TP
+SET PROTOCOL [ name... ]
+Tells Kermit to use an external file\(hytransfer protocol.
+.TP
+FTP { PUT, MPUT, GET, MGET, ... }
+FTP client commands.
+.TP
+HTTP { PUT, GET, HEAD, POST, ... }
+HTTP client commands.
+.RE
+.SS
+Kermit Server
+.RS
+.TP
+ENABLE, DISABLE
+Controls which server features can be used by clients.
+.TP
+SET SERVER
+Sets parameters prior to entering Server state.
+.TP
+SERVER
+Enters Server state.
+.RE
+.SS
+Client of Kermit or FTP Server
+.RS
+.TP
+[ REMOTE ] LOGIN [ user password ]
+Logs in to a Kermit server or IKSD that requires it.
+.TP
+[ REMOTE ] LOGOUT
+Logs out from a Kermit server or IKSD.
+.TP
+SEND [ options ] filename [ as\(hyname ]
+Sends the given file to the server. Synonyms: S, PUT.
+.TP
+SEND [ options ] filespec
+Sends all files that match.
+.TP
+RESEND [ options ] filespec
+Resumes an interupted SEND from the point of failure.
+.TP
+GET [ options ] remote\(hyfilespec
+Asks the server to send the given files. Synonym: G.
+.TP
+REGET [ options ] remote\(hyfilespec
+Resumes an interrupted GET from the point of failure.
+.TP
+REMOTE CD [ directory ]
+Asks server to change its working
+directory. Synonym: RCD.
+.TP
+REMOTE PWD [ directory ]
+Asks server to display its working directory. Synonym: RPWD.
+.TP
+REMOTE DIRECTORY [ filespec... ]
+Asks server to send a directory listing. Synonym: RDIR.
+.TP
+REMOTE DELETE [ filespec... ]
+Asks server to delete files. Synonym: RDEL.
+.TP
+REMOTE [ command... ]
+(Many other commands: "remote ?" for a list).
+.TP
+MAIL [ options ] filespec
+Sends file(s) to be delivered as e\(hymail (Kermit only).
+.TP
+FINISH
+Asks the server to exit server state (Kermit only).
+.TP
+BYE
+Asks the server to log out and close the connection.
+.RE
+.SS
+Script Programming
+.PP
+.RS
+DEFINE, DECLARE, UNDEFINE, UNDECLARE, ASSIGN, EVALUATE, SEXPRESSION,
+ARRAY, SORT, INPUT, OUTPUT, IF, FOR, WHILE, SWITCH, GOTO, ECHO, ASK,
+GETC, GETOK, ASSERT, WAIT, SLEEP, FOPEN, FREAD, FWRITE, FCLOSE, STOP,
+END, RETURN, LEARN, SHIFT, TRACE, VOID, INCREMENT, DECREMENT, ... For
+these and many more you'll need to consult the manual and supplements,
+and/or visit the Kermit Script Library, which also includes a brief
+tutorial. Hint: HELP LEARN to find out how to get Kermit to write
+simple scripts for you.
+.RE
+.PP
+Many of Kermit's commands have synonyms, variants, relatives, and so on.
+For example, MSEND is a version of SEND that accepts a list of file
+specifications to be sent, rather than just one file specification, and
+MPUT is a synonym of MSEND. MOVE means to SEND and then DELETE the source
+file if successful. MMOVE is like MOVE, but accepts a list of filespecs,
+and so on. These are described in the full documentation.
+.PP
+Use question mark to feel your way through an unfamiliar command, as in
+this example:
+.PP
+.nf
+ C\-Kermit> remote ? One of the following:
+ assign directory kermit print rmdir
+ cd exit login pwd set
+ copy help logout query space
+ delete host mkdir rename type
+ C\-Kermit> remote set ? One of the following:
+ attributes file retry transfer
+ block\-check receive server window
+ C\-Kermit> remote set file ? One of the following:
+ character\-set incomplete record\-length
+ collision names type
+ C\-Kermit> remote set file names ? One of the following:
+ converted literal
+ C\-Kermit> remote set file names literal
+ C\-Kermit>
+.PP
+.fi
+This is called menu on demand: you get a menu when you want one, but menus
+are not forced on you even when know what you're doing. Note that you can
+also abbreviate most keywords, and you can complete them with the Tab or
+Esc key. Also note that ? works for filenames too, and that you can use it
+in the middle of a keyword or filename, not just at the beginning. For
+example, "send x?" lists all the files in the current directory whose names
+start with 'x'.
+.SH INITIALIZATION FILE
+In its default configuration, C\(hyKermit executes commands from a file
+called .kermrc in your home directory when it starts, unless it is given the
+\-Y or \-y command\(hyline option. Custom configurations might substitute a shared
+system\(hywide initialization file. The SHOW FILE command tells what
+initialization file, if any, was used. The standard initialization file
+"chains" to an individual customization file, .mykermc, in the home directory,
+in which each user can establish her/his own preferences, define macros, and
+so on.
+.PP
+Since execution of the initialization file (at least the standard one)
+makes C\(hyKermit take longer to start, it might be better not to have an
+initialization file, especially now that Kermit's default startup
+configuration is well attuned to modern computing and networking \(hy\(hy in
+other words, you no longer have do anything special to make Kermit
+transfers go fast. So instead of having an initialization file that is
+executed every time Kermit starts, you might consider making one or more
+kerbang scripts (with names other that .kermrc) that do NOT include an
+"exit" command, and invoke those when you need the settings, macro
+definitions, and/or scripted actions they contain, and invoke C\(hyKermit
+directly when you don't.
+.PP
+To put it another way... We still distribute the standard initialization
+file since it's featured in the manual and backwards compatibility is
+important to us. But there's no harm in not using it if you don't need the
+stuff that's in it (services directory, dialing directory, network
+directory, and associated macro definitions). On the other hand, if there
+are settings or macros you want in effect EVERY time you use Kermit, the
+initialization file (or the customization file it chains to) is the place
+to put them, because that's the only place Kermit looks for them
+automatically each time you start it.
+.SH MODES OF OPERATION
+Kermit is said to be in Local mode if it has made a connection to another
+computer, e.g. by dialing it or establishing a Telnet connection to it. The
+other computer is remote, so if you start another copy of Kermit on the
+remote computer, it is said to be in Remote mode (as long as it has not
+made any connections of its own). The local Kermit communicates over the
+communications device or network connection, acting as a conduit between
+the the remote computer and your keyboard and screen. The remote Kermit is
+the file\(hytransfer partner to the local Kermit and communicates only through
+its standard input and output.
+.PP
+At any moment, a Kermit program can be in any of the following states. It's
+important to know what they are and how to change from one to the other.
+.TP
+Command state
+In this state, Kermit reads commands from:
+.sp
+\(bu Your keyboard; or:
+.br
+\(bu A file, or:
+.br
+\(bu A macro definition.
+.sp
+You can exit from Command state back to Unix with the EXIT or QUIT
+command (same thing). You can enter Connect state with any of various
+commands (CONNECT, DIAL, TELNET, etc). You can enter file transfer
+state with commands like SEND, RECEIVE, and GET. You can enter Server
+state with the SERVER command. The TAKE command tells Kermit to read
+and execute commands from a file. The (perhaps implied) DO command
+tells Kermit to read and execute commands from a macro definition.
+While in Command state, you can interrupt any command, macro, or
+command file by typing Ctrl\-C (hold down the Ctrl key and press the C
+key); this normally brings you back to the prompt.
+.TP
+Shell state
+You can invoke an inferior shell or external command from the Kermit
+command prompt by using the PUSH, RUN (!), EDIT, or BROWSE command.
+While the inferior shell or command is active, Kermit is suspended and
+does nothing. Return to Kermit Command state by exiting from the
+inferior shell or application.
+.TP
+Connect state
+In this state, which can be entered only when in Local mode (i.e. when
+Kermit has made a connection to another computer), Kermit is acting as
+a terminal to the remote computer. Your keystrokes are sent to the
+remote computer and characters that arrive over the communication
+connection are displayed on your screen. This state is entered when
+you give a CONNECT, DIAL, TELNET, RLOGIN, or IKSD command. You can
+return to command state by logging out of the remote computer, or by
+typing:
+.sp
+ Ctrl\-\ec
+.sp
+That is: Hold down the Ctrl key and press the backslash key, then let
+go of the Ctrl key and press the C key. This is called escaping back.
+Certain other escape\(hylevel commands are also provided; type Ctrl\-\e?
+for a list. For example, you can enter Shell state with:
+.sp
+ Ctrl\-\e!
+.sp
+To send a Ctrl\-\e to the host while in Connect state, type two of them
+in a row. See HELP CONNECT and HELP SET ESCAPE for more info.
+.TP
+Local file\(hytransfer state
+In this state, Kermit is sending packets back and forth with the other
+computer in order to transfer a file or accomplish some other
+file\(hyrelated task. And at the same time, it is displaying its progress
+on your screen and watching your keyboard for interruptions. In this
+state, the following single\(hykeystroke commands are accepted:
+.sp
+.RS
+.TP
+X
+Interrupt the current file and go on to the next (if any).
+.TP
+Z
+Interrupt the current file and skip all the rest.
+.TP
+E
+Like Z but uses a "stronger" protocol (use if X or Z don't work).
+.TP
+Ctrl\-C
+Interrupt file\(hytransfer mode (use if Z or E don't work).
+.sp
+.RE
+Kermit returns to its previous state (Command or Connect) when the
+transfer is complete or when interrupted successfully by X, Z, E, or
+Ctrl\-C (hold down the Ctrl key and press the C key).
+.TP
+Remote file\(hytransfer state
+In this state, Kermit is exchanging file\(hytransfer packets with its
+local partner over its standard i/o. It leaves this state
+automatically when the transfer is complete. In case you find your
+local Kermit in Connect state and the remote one in File\(hytransfer
+state (in which it seems to ignore your keystrokes), you can usually
+return it to command state by typing three Ctrl\-C's in a row. If that
+doesn't work, return your local Kermit to Command state (Ctrl\-\e C) and
+type "e\(hypacket" and then press the Return or Enter key; this forces a
+fatal Kermit protocol error.
+.TP
+Remote Server state
+This is like Remote File\(hytransfer state, except it never returns
+automatically to Command state. Rather, it awaits further instructions
+from the client program; that is, from your Local Kermit program. You
+can return the Remote Server to its previous state by issuing a
+"finish" command to the client, or if you are in Connect state, by
+typing three Ctrl\-C's in a row. You can tell the server job to log out
+and break the connection by issuing a "bye" command to the client.
+.TP
+Local Server state
+Like Remote\(hyServer state, but in local mode, and therefore with its
+file\(hytransfer display showing, and listening for single\(hykey commands,
+as in Local File\(hytransfer state. Usually this state is entered
+automatically when a remote Kermit program gives a GET command.
+.sp
+C\(hyKermit, Kermit 95, and MS\(hyDOS Kermit all can switch automatically from
+Connect state to Local File\(hytransfer state when you initiate a file
+transfer from the remote computer by starting Kermit and telling it to send
+or get a file, in which case, Connect state is automatically resumed after
+the file transfer is finished.
+.sp
+Note that C\(hyKermit is not a terminal emulator. It is a communications
+application that you run in a terminal window (e.g. console or Xterm). The
+specific emulation, such as VT100, VT220, Linux Console, or Xterm, is
+provided by the terminal window in which you are running C\(hyKermit. Kermit
+95 and MS\(hyDOS Kermit, on the other hand, are true terminal emulators. Why
+is C\(hyKermit not a terminal emulator? CLICK HERE to read about it.
+.SH MAKING CONNECTIONS
+Here is how to make different kinds of connections using interactive Kermit
+commands (as noted above, you can also make connections with command\(hyline
+options). Note that you don't have to make connections with Kermit. It can
+also be used on the far end of a connection as the remote file transfer and
+management partner of your local communications software.
+.TP
+Making a Telnet Connection
+At the C\(hyKermit command prompt, simply type:
+.sp
+.nf
+ telnet foo.bar.com
+.fi
+.sp
+(substituting desired hostname or address).
+You can also include a port number:
+.sp
+.nf
+ telnet xyzcorp.com 3000 ;
+.fi
+.sp
+If the connection is successful, Kermit automically enters Connect
+state. When you logout from the remote host, Kermit automatically
+returns to its prompt. More info: HELP TELNET, HELP SET TELNET, HELP
+SET TELOPT. Also see the IKSD section below.
+.TP
+Making an Rlogin connection
+This is just like Telnet, except you have to be root to do it because
+Rlogin uses a privileged TCP port:
+.sp
+.nf
+ rlogin foo.bar.com
+.fi
+.sp
+More info: HELP RLOGIN.
+.TP
+Making an SSH Connection
+Unlike Telnet and Rlogin, SSH connections are not built\(hyin, but
+handled by running your external SSH client through a pseudoterminal.
+Using C\(hyKermit to control the SSH client gives you all of Kermit's
+features (file transfer, character\(hyset conversion, scripting, etc)
+over SSH.
+.sp
+ ssh foo.bar.com
+.sp
+More info: HELP SSH, HELP SET SSH.
+.TP
+Dialing with a Modem
+If it's an external modem, make sure it is connected to a usable
+serial port on your computer with a regular (straight\(hythrough) modem
+cable, and to the telephone jack with a telephone cable, and that it's
+turned on. Then use these commands:
+.sp
+.nf
+ set modem type usrobotics ; Or other supported type
+ set line /dev/ttyS0 ; Specify device name
+ set speed 57600 ; Or other desired speed
+ set flow rts/cts ; Most modern modems support this
+ set dial method tone ; (or pulse)
+ dial 7654321 ; Dial the desired number
+.fi
+.sp
+Type "set modem type ?" for a list of supported modem types. If you
+omit the SET MODEM TYPE command, the default type is
+"generic\(hyhigh\(hyspeed", which should work for most modern AT\(hycommand\(hyset
+modems. If the line is busy, Kermit redials automatically. If the call
+does not succeed, use "set dial display on" and try it again to watch
+what happens. If the call succeeds, Kermit enters Connect state
+automatically and returns to its prompt automatically when you log out
+from the remote computer or the connection is otherwise lost.
+.sp
+You can also dial from a modem that is accessible by Telnet, e.g. to a
+reverse terminal server. In this case the command sequence is:
+.sp
+.nf
+ set host ts.xxx.com 2000 ; Terminal\(hyserver and port
+ set modem type usrobotics ; Or other supported type
+ set dial method tone ; (or pulse)
+ dial 7654321 ; Dial the desired number
+.fi
+.sp
+If the terminal server supports the Telnet Com Port Option, RFC 2217,
+you can also give serial\(hyport related commands such as SET SPEED, SET
+PARITY, and so on, and Kermit relays them to the terminal server using
+the protocol specified in the RFC.
+.sp
+More info: HELP SET MODEM, HELP SET LINE, HELP SET SPEED, HELP SET
+FLOW, HELP DIAL, HELP SET DIAL, HELP SET MODEM, HELP SET
+CARRIER\-WATCH, SHOW COMMUNICATIONS, SHOW MODEM, SHOW DIAL.
+.TP
+Direct Serial Port
+Connect the two computers, A and B, with a null modem cable (or two
+modem cables interconnected with a null\(hymodem adapter or modem
+eliminator). From Computer A:
+.sp
+.nf
+ set modem type none ; There is no modem
+ set line /dev/ttyS0 ; Specify device name
+ set carrier\-watch off ; If DTR CD are not cross\(hyconnected
+ set speed 57600 ; Or other desired speed
+ set flow rts/cts ; If RTS and CTS are cross\(hyconnected
+ set parity even ; (or "mark" or "space", if necessary)
+ set stop\-bits 2 ; (rarely necessary)
+ set flow xon/xoff ; If you can't use RTS/CTS
+ connect ; Enter Connect (terminal) state
+.fi
+.sp
+This assumes Computer B is set up to let you log in. If it isn't, you
+can run a copy of Kermit on Computer B and follow approximately the
+same directions. More info: As above plus HELP CONNECT.
+.PP
+With modems or direct serial connections, you might also have to "set
+parity even" (or "mark" or "space") if it's a 7\(hybit connection.
+.PP
+Of the connection types listed above, only one can be open at a time.
+However, any one of these can be open concurrently with an FTP or HTTP
+session. Each connection type can be customized to any desired degree,
+scripted, logged, you name it. See the manual.
+.PP
+NOTE: On selected platforms, C\(hyKermit also can make X.25 connections. See
+the manual for details.
+.SH TRANSFERRING FILES WITH KERMIT
+There is a widespread and persistent belief that Kermit is a slow protocol.
+This is because, until recently, it used conservative tuning by default to
+make sure file transfers succeeded, rather than failing because they
+overloaded the connection. Some extra commands (or command\(hyline options,
+like \-Q) were needed to make it go fast, but nobody bothered to find out
+about them. Also, it takes two to tango: most non\(hyKermit\(hyProject Kermit
+protocol implementations really ARE slow. The best file\(hytransfer partners
+for C\(hyKermit are: another copy of C\(hyKermit (7.0 or later) and Kermit 95.
+These combinations work well and they work fast by default. MS\(hyDOS Kermit
+is good too, but you have to tell it to go fast (by giving it the FAST
+command).
+.PP
+Furthermore, all three of these Kermit programs support "autodownload" and
+"autoupload", meaning that when they are in Connect state and a Kermit
+packet comes in from the remote, they automatically switch into file
+transfer mode.
+.PP
+And plus, C\(hyKermit and K95 also switch automatically between text and
+binary mode for each file, so there is no need to "set file type binary" or
+"set file type text", or to worry about files being corrupted because they
+were transferred in the wrong mode.
+.PP
+What all of these words add up to is that now, when you use up\(hyto\(hydate
+Kermit software from the Kermit Project, file transfer is not only fast,
+it's ridiculously easy. You barely have to give any commands at all.
+.TP
+Downloading Files
+Let's say you have Kermit 95, C\(hyKermit, or MS\(hyDOS Kermit on your
+desktop computer, with a connection to a Unix computer that has
+C\(hyKermit installed as "kermit". To download a file (send it from Unix
+to your desktop computer), just type the following command at your
+Unix shell prompt:
+.sp
+ kermit \-s oofa.txt
+.sp
+(where oofa.txt is the filename). If you want to send more than one
+file, you can put as many filenames as you want on the command line,
+and they can be any combination of text and binary:
+.sp
+ kermit \-s oofa.txt oofa.zip oofa.html oofa.tar.gz
+.sp
+and/or you can use wildcards to send groups of files:
+.sp
+ kermit \-s oofa.*
+.sp
+If you want to send a file under an assumed name, use:
+.sp
+ kermit \-s friday.txt \-a today.txt
+.sp
+This sends the file friday.txt but tells the receiving Kermit that its
+name is today.txt. In all cases, as noted, when the file transfer is
+finished, your desktop Kermit returns automatically to Connect state.
+No worries about escaping back, re\(hyconnecting, text/binary mode
+switching. Almost too easy, right?
+.TP
+Uploading Files
+To upload files (send them from your desktop computer to the remote
+Unix computer) do the same thing, but use the \-g (GET) option instead
+of \-s:
+.sp
+ kermit \-g oofa.txt
+.sp
+This causes your local Kermit to enter server mode; then the remote
+Kermit program requests the named file and the local Kermit sends it
+and returns automatically to Connect state when done.
+.sp
+If you want to upload multiple files, you have have use shell quoting
+rules, since these aren't local files:
+.sp
+.nf
+ kermit \-g "oofa.txt oofa.zip oofa.html oofa.tar.gz"
+ kermit \-g "oofa.*"
+.fi
+.sp
+If you want to upload a file but store it under a different name, use:
+.sp
+ kermit \-g friday.txt \-a today.txt
+.TP
+Kermit Transfers the Old\(hyFashioned Way
+If your desktop communications software does not support autoupload or
+autodownload, or it does not include Kermit server mode, the procedure
+requires more steps.
+.sp
+To download a file, type:
+.sp
+ kermit \-s filename
+.sp
+on the host as before, but if nothing happens automatically in
+response to this command, you have to switch your desktop
+communications software into Kermit Receive state. This might be done
+by escaping back using keyboard characters or hot keys (Alt\-x is
+typical) and/or with a command (like RECEIVE) or a menu. When the file
+transfer is complete, you have to go back to Connect state, Terminal
+emulation, or whatever terminology applies to your desktop
+communications software.
+.sp
+To upload a file, type:
+.sp
+ kermit \-r
+.sp
+on the host (rather than "kermit \-g"). This tells C\(hyKermit to wait
+passively for a file to start arriving. Then regain the attention of
+your desktop software (Alt\-x or whatever) and instruct it to send the
+desired file(s) with Kermit protocol. When the transfer is finished,
+return to the Connect or Terminal screen.
+.TP
+If File Transfer Fails
+Although every aspect of Kermit's operation can be finely tuned, there
+are also three short and simple "omnibus tuning" commands you can use
+for troubleshooting:
+.RS
+.TP
+FAST
+Use fast file\(hytransfer settings. This has been the default since
+C\(hyKermit 7.0 now that most modern computers and connections
+support it. If transfers fail with fast settings, try . . .
+.TP
+CAUTIOUS
+Use cautious but not paranoid settings. File transfers, if they
+work, will go at medium speed. If not, try . . .
+.TP
+ROBUST
+Use the most robust, resilient, conservative, safe, and reliable
+settings. File transfers will almost certainly work, but they
+will be quite slow (of course this is a classic tradeoff; ROBUST
+was C\(hyKermit's default tuning in versions 6.0 and earlier, which
+made everybody think Kermit protocol was slow). If ROBUST doesn't
+do the trick, try again with SET PARITY SPACE first in case it's
+not an 8\(hybit connection.
+.RE
+.sp
+Obviously the success and performance of a file transfer also depends
+on C\(hyKermit's file transfer partner. Up\(hyto\(hydate, real Kermit Project
+partners are recommended because they contain the best Kermit protocol
+implementations and because we can support them in case of trouble.
+.sp
+If you still have trouble, consult Chapter 10 of Using C\(hyKermit, or
+send email to kermit\(hysupport@columbia.edu.
+.TP
+Advanced Kermit File\(hyTransfer Features
+Obviously there is a lot more to Kermit file transfer, including all
+sorts of interactive commands, preferences, options, logging,
+debugging, troubleshooting, and anything else you can imagine but
+that's what the manual and updates are for. Here are a few topics you
+can explore if you're interested by Typing HELP for the listed
+commands:
+.RS
+.TP
+Logging transfers:
+LOG TRANSACTIONS (HELP LOG)
+.TP
+Automatic per\(hyfile text/binary mode switching:
+SET TRANSFER MODE { AUTOMATIC, MANUAL } (HELP SET TRANSFER).
+.TP
+Cross\(hyplatform recursive directory tree transfer:
+SEND /RECURSIVE, GET /RECURSIVE (HELP SEND, HELP GET).
+.TP
+File collision options:
+SET FILE COLLISION { OVERWRITE, BACKUP, DISCARD, ... } (HELP SET FILE).
+.TP
+Update: Transfer only files that changed since last time:
+SET FILE COLLISION UPDATE (HELP SET FILE).
+.TP
+Filename selection patterns:
+(HELP WILDCARD).
+.TP
+Flexible file selection:
+SEND (or GET) /BEFORE /AFTER /LARGER /SMALLER /TYPE /EXCEPT, ...
+.TP
+Character\(hyset conversion:
+SET { FILE, TRANSFER } CHARACTER\-SET, ASSOCIATE, ...
+.TP
+File/Pathname control:
+SET { SEND, RECEIVE } PATHNAMES, SET FILE NAMES.
+.TP
+Atomic file movement:
+SEND (or GET) /DELETE /RENAME /MOVE\-TO
+.TP
+Transferring to/from standard i/o of other commands:
+SEND (or GET) /COMMAND
+.TP
+Recovery of interrupted transfer from point of failure:
+RESEND, REGET (HELP RESEND, HELP REGET).
+.RE
+.TP
+Non\(hyKermit File Transfer
+You can also use C\(hyKermit to transfer files with FTP or HTTP Internet
+protocols; see below.
+.sp
+On a regular serial or Telnet connection where the other computer
+doesn't support Kermit protocol at all, you have several options. For
+example, if your desktop communications software supports Zmodem, use
+"rz" and "sz" on the host rather than Kermit. But if Kermit is your
+desktop software, and you are using it to make calls or network
+connections to other computers that don't support Kermit protocol (or
+that don't have a good implementation of it), then if your computer
+also has external X, Y, or Zmodem programs that are redirectable,
+Kermit can use them as external protocols. HELP SET PROTOCOL for
+details.
+.sp
+You can also capture "raw" data streams from the other computer with
+LOG SESSION (HELP LOG and HELP SET SESSION\-LOG for details), and you
+can upload files without any protocol at all with TRANSMIT (HELP
+TRANSMIT, HELP SET TRANSMIT).
+.SH KERMIT'S BUILT\(hyIN FTP AND HTTP CLIENTS
+Kermit's FTP client is like the regular Unix FTP client that you're used
+to, but with some differences:
+.TP
+\(bu
+It has lots more commands and features.
+.TP
+\(bu
+Each FTP command must be prefixed with "ftp", for example "ftp open",
+"ftp get", "ftp bye", etc (this is not strictly true, but until you're
+more familiar with it, it's best to follow this rule).
+.TP
+\(bu
+Commands like "cd", "directory", etc, execute locally, not on the
+server. Use "ftp cd", "ftp dir", etc, to have them act on the server.
+.TP
+\(bu
+You can have an FTP session and a regular Kermit serial or Telnet
+session open at the same time.
+.TP
+\(bu
+FTP sessions can be fully automated.
+.PP
+Pending publication of the next edition of the manual, the Kermit FTP
+client is thoroughly documented at the Kermit Project website:
+.sp
+ http://www.columbia.edu/kermit/ftpclient.html
+.sp
+You also can use HELP FTP and HELP SET FTP to get descriptions of Kermit's
+FTP\(hyrelated commands.
+.PP
+The HTTP client is similar to the FTP one, except you prefix each command
+with HTTP instead of FTP: HTTP OPEN, HTTP GET, HTTP PUT, HTTP CLOSE, etc.
+Type HELP HTTP for details, or visit the to view the manual supplements.
+HTTP connections can be open at the same time as regular serial or Telnet
+connections and FTP connections. So Kermit can manage up to three types
+connections simultaneously.
+.SH INTERNET KERMIT SERVICE
+C\(hyKermit can be configured and run as an Internet service (called IKSD),
+similar to an FTP server (FTPD) except you can (but need not) interact with
+it directly, plus it does a lot more than an FTP server can do. The TCP
+port for IKSD is 1649. It uses Telnet protocol. C\(hyKermit can be an Internet
+Kermit Server, or it can be a client of an IKSD. You can make connections
+from C\(hyKermit to an IKSD with any of the following commands:
+.sp
+.nf
+ telnet foo.bar.edu 1649
+ telnet foo.bar.edu kermit ; if "kermit" is listed in /etc/services
+ iksd foo.bar.edu
+.fi
+.sp
+The IKSD command is equivalent to a TELNET command specifying port 1649.
+For more information about making and using connections to an IKSD, see:
+.sp
+ http://www.columbia.edu/kermit/cuiksd.html
+.sp
+You can run an Internet Kermit Service on your own computer too (if you are
+the system administrator). For instructions, see:
+.sp
+ http://www.columbia.edu/kermit/iksd.html
+.SH SECURITY
+All of C\(hyKermit's built\(hyin TCP/IP networking methods (Telnet, Rlogin, IKSD,
+FTP, and HTTP) can be secured by one or more of the following IETF\(hyapproved
+methods:
+.PP
+\(bu MIT Kerberos IV
+.br
+\(bu MIT Kerberos V
+.br
+\(bu SSL/TLS
+.br
+\(bu Stanford SRP
+.PP
+For complete instructions see:
+.PP
+ http://www.columbia.edu/kermit/security.html
+.PP
+And as noted previously, you can also make SSH connections with C\(hyKermit if
+you already have an SSH client installed.
+.SH ALTERNATIVE COMMAND\(hyLINE PERSONALITIES
+When invoked as "kermit" or any other name besides "ftp" or "telnet",
+C\(hyKermit has the command\(hyline options described above in the OPTIONS
+section. However, if you invoke C\(hyKermit as "telnet" or "ftp", it changes
+its command\(hyline personality to match. This can be done (among other ways)
+with symbolic links (symlinks). For example, if you want C\(hyKermit to be
+your regular Telnet client, or the Telnet helper of your Web browser, you
+can create a link like the following in a directory that lies in your PATH
+ahead of the regular telnet program:
+.sp
+ ln \-s /usr/local/bin/kermit telnet
+.sp
+Now when you give a "telnet" command, you are invoking Kermit instead, but
+with its Telnet command\(hyline personality so, for example:
+.sp
+ telnet xyzcorp.com
+.sp
+Makes a Telnet connection to xyzcorp.com, and Kermit exits automatically
+when the connection is closed (just like the regular Telnet client). Type
+"telnet \-h" to get a list of Kermit's Telnet\(hypersonality command\(hyline
+options, which are intended to be as compatible as possible with the
+regular Telnet client.
+.PP
+Similarly for FTP:
+.sp
+ ln \-s /usr/local/bin/kermit ftp
+.sp
+And now type "ftp \-h" to see its command\(hyline options, and command lines
+just like you would give your regular FTP client:
+.sp
+ ftp xyzcorp.com
+.sp
+but with additional options allowing an entire session to be specified on
+the command line. Finally, if Kermit's
+first command\(hyline option is a Telnet, FTP, IKSD, or HTTP URL, Kermit
+automatically makes the appropriate kind of connection and, if indicated by
+the URL, takes the desired action:
+.TP
+kermit telnet:xyzcorp.com
+Opens a Telnet session
+.TP
+kermit telnet://olga@xyzcorp.com
+Ditto for user olga
+.TP
+kermit ftp://olga@xyzcorp.com/public/oofa.zip
+Downloads a file
+.TP
+kermit kermit://kermit.columbia.edu/kermit/f/READ.ME
+Ditto for IKSD
+.TP
+kermit iksd://kermit.columbia.edu/kermit/f/READ.ME
+(This works too)
+.TP
+kermit http://www.columbia.edu/kermit/index.html
+Grabs a web page
+.fi
+.SH LICENSE
+C\(hyKermit has an unusual license, but a fair and sensible one since the
+Kermit Project must support itself out of revenue: it's not a BSD license,
+not GPL, not Artistic, not commercial, not shareware, not freeware. It can
+be summed up like this: if you want C\(hyKermit for your own use, you can
+download and use it without cost or license (but we'd appreciate it if you
+would purchase the manual). But if you want to sell C\(hyKermit or bundle it
+with a product or otherwise distribute it in a commercial setting EXCEPT
+WITH AN OPEN\(hySOURCE OPERATING SYSTEM DISTRIBUTION such as Linux, FreeBSD,
+NetBSD, or OpenBSD, you must license it. To see the complete license, give
+the LICENSE command at the prompt, or see the COPYING.TXT file distributed
+with C\(hyKermit 7.0 or later, or download it from
+.sp
+ ftp://kermit.columbia.edu/kermit/c\-kermit/COPYING.TXT
+.sp
+Send licensing inquiries to kermit@columbia.edu.
+.SH BUGS
+See the following files for listings of known bugs, limitations,
+workarounds, hints and tips:
+.TP
+ckcbwr.txt
+General C\(hyKermit bugs, hints, tips.
+.TP
+ckubwr.txt
+Unix\(hyspecific C\(hyKermit bugs, hints, tips.
+.PP
+Report bugs and problems by email to:
+.sp
+ kermit\-support@columbia.edu.
+.sp
+Before requesting technical support, please read the hints here:
+.sp
+ http://www.columbia.edu/kermit/support.html
+.sp
+and also read the C\(hyKermit Frequently Asked Questions:
+.sp
+ http://www.columbia.edu/kermit/ckfaq.html
+.SH OTHER TOPICS
+There's way more to C\(hyKermit than we've touched on here \(hy\(hy troubleshooting,
+customization, character sets, dialing directories, sending pages, script
+writing, and on and on, all of which are covered in the manual and updates
+and supplements. For the most up\(hyto\(hydate information on documentation (or
+updated documentation itself) visit the Kermit Project website:
+.sp
+ http://www.columbia.edu/kermit/
+.PP
+There you will also find Kermit software packages for other platforms:
+different Unix varieties, Windows, DOS, VMS, IBM mainframes, and many
+others: 20+ years' worth.
+.SH DOCUMENTATION AND UPDATES
+The manual for C\(hyKermit is:
+.TP
+.I
+Using C\(hyKermit
+Frank da Cruz and Christine M. Gianone,
+Second Edition, Digital Press / Butterworth\(hyHeinemann, Woburn, MA, 1997, 622
+pages, ISBN 1\-55558\-164\-1. This is a printed book. It covers C\(hyKermit 6.0.
+.TP
+The C\(hyKermit 7.0 Supplement
+http://www.columbia.edu/kermit/ckermit2.html
+.TP
+The C\(hyKermit 8.0 Supplement
+http://www.columbia.edu/kermit/ckermit3.html
+.PP
+Visit C\(hyKermit home page:
+.sp
+ http://www.columbia.edu/kermit/ckermit.html
+.sp
+to learn about new versions, Beta tests, and other news; to
+read case studies and tutorials; to download source code, install packages,
+and prebuilt binaries for many platforms. Also visit:
+.TP
+http://www.columbia.edu/kermit/scriptlib.html
+The Kermit script library and tutorial
+.TP
+http://www.columbia.edu/kermit/newfaq.html
+The Kermit FAQ (Frequently Asked Questions about Kermit)
+.TP
+http://www.columbia.edu/kermit/ckfaq.html
+The C\(hyKermit FAQ (Frequently Asked Questions about C\(hyKermit)
+.TP
+http://www.columbia.edu/kermit/telnet.html
+C\(hyKermit Telnet client documentation
+.TP
+http://www.columbia.edu/kermit/security.html
+C\(hyKermit security documentation (Kerberos, SSL/TLS, etc)
+.TP
+http://www.columbia.edu/kermit/cuiksd.html
+Internet Kermit Service user documentation
+.TP
+http://www.columbia.edu/kermit/iksd.html
+Internet Kermit Service administrator documentation
+.TP
+http://www.columbia.edu/kermit/studies.html
+Case studies.
+.TP
+http://www.columbia.edu/kermit/support.html
+Technical support.
+.TP
+http://www.columbia.edu/kermit/k95tutorial.html
+Kermit 95 tutorial.
+.TP
+comp.protocols.kermit.misc
+The Kermit newsgroup (unmoderated).
+.SH FILES
+.TP
+COPYING.TXT
+C\(hyKermit license.
+.TP
+~/.kermrc
+Initialization file.
+.TP
+~/.mykermrc
+Customization file.
+.TP
+~/.kdd
+Kermit dialing directory (see manual).
+.TP
+~/.knd
+Kermit network directory (see manual).
+.TP
+~/.ksd
+Kermit services directory (see manual).
+.TP
+ca_certs.pem
+Certificate Authority certifcates used for SSL connections.
+.TP
+ckuins.txt
+Installation instructions for Unix. Also at
+http://www.columbia.edu/kermit/ckuins.html.
+.TP
+ckcbwr.txt
+General C\(hyKermit bugs, hints, tips.
+.TP
+ckubwr.txt
+Unix\(hyspecific C\(hyKermit bugs, hints, tips.
+.TP
+ckcplm.txt
+C\(hyKermit program logic manual.
+.TP
+ckccfg.txt
+C\(hyKermit compile\(hytime configuration options.
+.TP
+ssh
+(in your PATH) SSH connection helper.
+.TP
+rz, sz, etc.
+(in your PATH) external protocols for XYZmodem.
+.TP
+/var/spool/locks (or whatever)
+UUCP lockfile for dialing out (see installation instructions).
+.SH AUTHORS
+.TP
+Software
+Frank da Cruz and Jeffrey E Altman,
+.br
+1985\(hypresent, with contributions from hundreds of others all over the
+world.
+.TP
+Documentation
+Frank da Cruz and Christine M Gianone
+.TP
+Address
+.nf
+The Kermit Project \(hy Columbia Univerity
+612 West 115th Street
+New York NY 10025\-7799
+USA
+.fi
+.TP
+E\(hyMail
+kermit@columbia.edu
+.TP
+Web
+http://www.columbia.edu/kermit/
+.fi
+.br
--- /dev/null
+
+C-KERMIT 8.0 UNIX MANUAL PAGE AND TUTORIAL
+
+ Frank da Cruz, Christine M. Gianone
+ [1]The Kermit Project, [2]Columbia University
+
+ [ [3]PDF version ] [ [4]Nroff version ]
+
+ This document is intended to give the beginner sufficient
+ information to make basic (if not advanced) use of C-Kermit 8.0.
+ Although it might be rather long for a Unix manual page (about 1600
+ lines), it's still far shorter than the C-Kermit manual, which
+ should be consulted for advanced topics such as customization,
+ character-sets, scripting, etc. We also attempt to provide a clear
+ structural overview of C-Kermit's many capabilities, functional
+ areas, states, and modes and their interrelation, that should be
+ helpful to beginners and veterans alike, as well as to those
+ upgrading to the new release.
+
+ Most recent update: 24 October 2002
+ ________________________________________________________________________
+
+ CONTENTS
+ * [5]DESCRIPTION
+ * [6]SYNOPSIS
+ * [7]OPTIONS
+ * [8]COMMAND LANGUAGE
+ * [9]INITIALIZATION FILE
+ * [10]MODES OF OPERATION
+ * [11]MAKING CONNECTIONS
+ * [12]TRANSFERRING FILES WITH KERMIT
+ * [13]KERMIT CLIENT/SERVER CONNECTIONS
+ * [14]KERMIT'S BUILT-IN FTP AND HTTP CLIENTS
+ * [15]INTERNET KERMIT SERVICE
+ * [16]SECURITY
+ * [17]ALTERNATIVE COMMAND-LINE PERSONALITIES
+ * [18]LICENSE
+ * [19]OTHER TOPICS
+ * [20]DOCUMENTATION AND UPDATES
+ * [21]FILES
+ * [22]AUTHORS
+ _________________________________________________________________
+
+ DESCRIPTION [ [23]Top ] [ [24]Contents ] [ [25]Next ]
+
+ [26]C-Kermit is an all-purpose communications software package from
+ the [27]Kermit Project at [28]Columbia University that:
+
+ * Is portable to many platforms, Unix and non-Unix alike.
+ * Can make both serial and network connections.
+ * Can conduct interactive terminal sessions over its connection.
+ * Can transfer text or binary files over the same connection.
+ * Can convert text-file character sets in terminal mode or file
+ transfer.
+ * Is customizable in every aspect of its operation.
+
+ C-Kermit is a modem program, a Telnet client, an Rlogin client, an FTP
+ client, an HTTP client, and on selected platforms, also an X.25
+ client. It can make its own secure Internet connections using
+ IETF-approved security methods including Kerberos IV, Kerberos V,
+ SSL/TLS, and SRP and it can also make SSH (Secure Shell) connections
+ through your external SSH client application. It can be the far-end
+ file-transfer or client/server partner of your desktop Kermit client.
+ It can also accept incoming dialed and network connections. It can
+ even be installed as an Internet service on its own standard TCP
+ socket, 1649 [[29]RFC2839, [30]RFC2840].
+
+ And perhaps most important, everything you can do "by hand"
+ (interactively) with C-Kermit, can be "scripted" (automated) using its
+ built-in cross-platform transport-independent script programming
+ language, which happens to be identical to its interactive command
+ language.
+
+ This manual page offers an overview of C-Kermit 8.0 for Unix ("Unix"
+ is an operating system family that includes AIX, DG/UX, FreeBSD,
+ HP-UX, IRIX, Linux, Mac OS X, NetBSD, OpenBSD, Open Server, Open Unix,
+ QNX, Solaris, SunOS, System V R3, System V R4, Tru64 Unix, Unixware,
+ Xenix, and many others). For thorough coverage, please consult the
+ published C-Kermit manual and supplements (see [31]DOCUMENTATION
+ below). For further information about C-Kermit, Kermit software for
+ other platforms, and Kermit manuals, visit the Kermit Project website:
+
+ [32]http://www.columbia.edu/kermit/
+
+ This is a longer-than-average manual page, and yet it barely scratches
+ the surface. Don't be daunted. C-Kermit is a large and complex
+ package, evolving over decades of practice and experience, but that
+ doesn't mean it's hard to learn or use. Its most commonly used
+ functions are explained here with pointers to additional information
+ elsewhere.
+
+ [ [33]Kermit Home ] [ [34]C-Kermit Home ] [ [35]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ SYNOPSIS [ [36]Top ] [ [37]Contents ] [ [38]Next ] [ [39]Previous ]
+
+ Usage: kermit [filename] [-x arg [-x arg]...[-yyy]..] [ {=,--,+} text
+ ] ]
+ Or: kermit URL
+
+ * -x is an option requiring an argument;
+ * -y is an option with no argument.
+
+ If the first command-line argument is the name of a file,
+ interactive-mode commands are executed from the file. The '=' (or
+ "--") argument tells Kermit not to parse the remainder of the command
+ line, but to make the words following '=' available as \%1, \%2, ...
+ \%9. The "+" argument is like "=" but for use in "kerbang scripts"
+ (explained [40]below). A second command-line format allows the one and
+ only argument to be a [41]Telnet, FTP, HTTP, or IKSD URL.
+
+ Order of execution:
+
+ 1. [42]The command file (if any).
+ 2. [43]The initialization file, if any, unless suppressed with -Y.
+ 3. [44]The customization file (if it is executed by the
+ initialization file).
+ 4. [45]The command-line URL (if any, and if so, execution stops
+ here).
+ 5. [46]Command-line options (if any).
+ 6. [47]Interactive commands.
+
+ Some command-line options can cause actions (such as -s to send a
+ file); others just set parameters. If any action options are included
+ on the command line, Kermit exits when finished unless also given the
+ -S ("stay") option. If no action options are given, no initialization
+ or command files contained an EXIT or QUIT command, and no fatal
+ errors occurred, Kermit issues its prompt and waits for you to type
+ commands.
+
+ Bear in mind that C-Kermit can be built with selected features
+ disabled, and also that certain features are not available on all
+ platforms. For example, C-Kermit can't be built with TCP/IP support
+ on a platform that does not have TCP/IP header files and libraries
+ (and even if Kermit does include TCP/IP support, it can't be used
+ to make TCP/IP connections on a computer that does not have a
+ TCP/IP stack installed). If your version of C-Kermit lacks a
+ feature mentioned here, use its SHOW FEATURES command to see what
+ might have been excluded.
+
+ C-Kermit has three kinds of commands: regular single-letter
+ command-line options, extended-format command-line options, and
+ interactive commands.
+
+ [ [48]Kermit Home ] [ [49]C-Kermit Home ] [ [50]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ OPTIONS [ [51]Top ] [ [52]Contents ] [ [53]Next ] [ [54]Previous ]
+
+ Like most Unix commands, C-Kermit can be be given options on the
+ command line. But C-Kermit also can be used interactively by giving it
+ [55]commands composed of words, which are more intuitive than cryptic
+ command-line options, and more flexible too. In other words, you don't
+ have to use C-Kermit's command-line options, but they are available if
+ you want to. (By the same token, you don't have to use its interactive
+ commands either -- you can use either or both in any combination.)
+
+ C-Kermit is generally installed in the PATH as "kermit", and therefore
+ is invoked by typing the word "kermit" (lowercase) at the shell
+ prompt, and then pressing the Return or Enter key. If you wish to
+ include command-line options, put them after the word "kermit" but
+ before pressing Return or Enter, separated by spaces, for example:
+
+ $ kermit -s ckermit.tar.gz
+
+ ('$' is the shell prompt; "kermit -s ckermit.tar.gz" is what you type,
+ followed by Return or Enter.)
+
+ Here is a list of C-Kermit's single-letter command-line options, which
+ start with a single dash (-), in ASCII ("alphabetical") order.
+ Alphabetic case is significant (-A is not the same as -a). The Action?
+ column contains Y for action options and N for non-action options.
+ Option Action? Description
+ -0 N (digit zero) 100% transparent Connect state for "in-the-middle"
+ operation: 8 bits, no parity, no escape character, everything passes
+ through.
+ -8 N (digit eight) Connection is 8-bit clean (this is the default in
+ C-Kermit 8.0). Equivalent to the EIGHTBIT command, which in turn is a
+ shortcut for SET TERMINAL BYTESIZE 8, SET COMMAND BYTESIZE 8, SET
+ PARITY NONE.
+ -9 arg N (digit nine) Make a connection to an FTP server. Equivalent
+ to the FTP OPEN command.
+ Argument: IP-address-or-hostname[:optional-TCP-port].
+ NOTE: C-Kermit also has a separate FTP command-line personality, with
+ regular FTP-like command-line syntax. [56]More about this below.
+ -A N Kermit is to be started as an Internet service (IKSD) (only from
+ inetd.conf).
+ -B N Kermit is running in Batch or Background (no controlling
+ terminal). To be used in case Kermit doesn't automatically sense its
+ background status. Equivalent to the SET BACKGROUND ON command.
+ -C arg N Interactive-mode Commands to be executed.
+ Argument: Commands separated by commas, list in doublequotes.
+ -D arg N Delay before starting to send in Remote mode. Equivalent to
+ the SET DELAY command.
+ Argument: Number of seconds.
+ -E N Exit automatically when connection closes. Equivalent to SET EXIT
+ ON-DISCONNECT ON.
+ -F arg N Use an open TCP connection.
+ Argument: Numeric file descriptor of open TCP connection.
+ Also see: -j, -J.
+ -G arg Y Get file(s) from server, send contents to standard output,
+ which normally would be piped to another process.
+ Argument: Remote file specification, in quotes if it contains
+ metacharacters.
+ Also see: -g, -k.
+ -H N Suppress program startup Herald and greeting.
+ -I N Tell Kermit it has a reliable connection, to force streaming to
+ be used where it normally would not be. Equivalent to the SET RELIABLE
+ ON command.
+ -J arg N "Be like Telnet." Like -j but implies -E.
+ Argument: IP hostname/address optionally followed by service.
+ NOTE: C-Kermit also has a separate Telnet command-line personality,
+ with regular Telnet-like command-line syntax. [57]More about this
+ below.
+ -L N Recursive directory descent for files in -s option.
+ -M arg N My user name (for use with Telnet, Rlogin, FTP, etc).
+ Equivalent to the SET LOGIN USER command.
+ Argument: Username string.
+ -O Y (Uppercase letter O) Be a server for One command only. Also see:
+ -x.
+ -P N Don't convert file (Path) names of transferred files. Equivalent
+ to SET FILE NAMES LITERAL.
+ -Q N Quick Kermit protocol settings. Equivalent to the FAST command.
+ This is the default in C-Kermit 7.0 and later.
+ -R N Remote-only (this just makes IF REMOTE true).
+ -S N Stay (enter command parser after action options).
+ -T N Force Text mode for file transfer; implies -V. Equivalent to SET
+ TRANSFER MODE MANUAL, SET FILE TYPE TEXT.
+ -V N Disable automatic per-file text/binary switching. Equivalent to
+ SET TRANSFER MODE MANUAL.
+ -Y N Skip (don't execute) the initialization file.
+ -a arg N As-name for file(s) in -s, -r, or -g.
+ Argument: As-name string (alternative filename). When receiving files,
+ this can be a directory name.
+ -b arg N Speed for serial device. Equivalent to SET SPEED.
+ Argument: Numeric Bits per second for serial connections.
+ -c Y Enter Connect state before transferring files.
+ -d N Create a debug.log file with detailed debugging information (a
+ second -d adds timestamps). Equivalent to LOG DEBUG but takes effect
+ sooner.
+ -e arg N Maximum length for incoming Kermit file-transfer packets.
+ Equivalent to SET RECEIVE PACKET-LENGTH.
+ Argument: Length in bytes.
+ -f Y Send a FINISH command to a Kermit server.
+ -g arg N Get file(s) from a Kermit server.
+ Argument: File specification on other computer, in quotes if it
+ contains metacharacters. Equivalent to GET.
+ Also see: -a, -G, -r.
+ -h Y Print Help text for single-letter command-line options (pipe thru
+ 'more' to prevent scrolling).
+ -i N Force binary (Image) mode for file transfer; implies -V.
+ Equivalent to SET TRANSFER MODE MANUAL, SET FILE TYPE BINARY.
+ -j arg N Make a TCP/IP connection.
+ Argument: IP host name/address and optional service name or number.
+ Equivalent to the TELNET command.
+ Also see: -J, -F.
+ -k Y Receive file(s) to standard output, which normally would be piped
+ to another process.
+ Also see: -r, -G.
+ -l arg N (Lowercase letter L) Make a connection on the given serial
+ communications device. Equivalent to the SET LINE (SET PORT) command.
+ Argument: Serial device name, e.g. /dev/ttyS0.
+ -m arg N Modem type for use with the -l device. Equivalent to the SET
+ MODEM TYPE command.
+ Argument: Modem name as in SET MODEM TYPE command, e.g. "usrobotics".
+ -n Y Enter Connect state after transferring files (historical).
+ -p arg N Parity. Equivalent to the SET PARITY command.
+ Argument: One of the following: e(ven), o(dd), m(ark), n(one),
+ s(pace).
+ -q N Quiet (suppress most messages). Equivalent to SET QUIET ON.
+ -r Y Receive file(s). Equivalent to the RECEIVE command.
+ Argument: (none, but see -a)
+ -s arg N Send file(s).
+ Argument: One or more local file specifications. Equivalent to the
+ SEND command.
+ Also see: -a.
+ -t N (Historical) Xon (Ctrl-Q) Turnaround character for half-duplex
+ connections (used on serial linemode connections to old mainframes).
+ Equivalent to SET DUPLEX HALF, SET HANDSHAKE XON.
+ -v arg N Window size for Kermit protocol (ignored when streaming).
+ Equivalanet to SET WINDOW-SIZE.
+ Argument: Number, 1 to 32.
+ -w N Incoming files Write over existing files. Equivalent to SET FILE
+ COLLISION OVERWRITE.
+ -x Y Enter server mode. Equivalent to the SERVER command. Also see:
+ -O.
+ -y arg N Alternative initialization file.
+ Argument: Filename.
+ -z N Force foreground behavior. To be used in case Kermit doesn't
+ automatically sense its foreground status. Equivalent to the SET
+ BACKGROUND OFF command.
+
+ Extended command-line options (necessary because single-letter ones
+ are about used up) start with two dashes (--), with words rather than
+ single letters as option names. If an extended option takes an
+ argument, it is separated from the option word by a colon (:).
+ Extended options include:
+ Option Description
+ --bannerfile:filename File to display upon startup or IKSD login.
+ --cdfile:filename File to be sent for display to the client when
+ server changes directory (filename is relative to the changed-to
+ directory).
+ --cdmessage:{on,off} Enable/disable the server CD message feature.
+ --help Prints usage message for extended options.
+ --helpfile:filename Designates a file containing custom text to
+ replace the top-level HELP command.
+ --nointerrupts Disables keyboard interrupts.
+ --noperms Disables the Kermit protocol file Permissions attribute, to
+ prevent transmission of file permissions (protection) from sender to
+ receiver.
+
+ Plus several other [58]IKSD-Only options.
+
+ See the [59]file-transfer section for examples of command-line
+ invocation.
+ ________________________________________________________________________
+
+ COMMAND LANGUAGE [ [60]Top ] [ [61]Contents ] [ [62]Next ] [ [63]Previous ]
+
+ * [64]Command Files, Macros, and Scripts
+ * [65]Command List
+
+ C-Kermit's interactive command language is the subject of a
+ [66]622-page book and another several hundred pages of updates, far
+ too much for a manual page. But it's not hard to get started. At the
+ shell prompt, just type "kermit" to get C-Kermit's interactive command
+ prompt:
+
+ $ kermit
+ (/current/directory) C-Kermit>
+
+ Begin by typing "help" (and then press the Return or Enter key) for a
+ top-level overview, read it, and go from there. Your second command
+ should probably be "intro" (introduction). Note the prompt shows your
+ current directory (unless you tell Kermit to prompt you with something
+ else).
+
+ Interactive commands are composed mainly of regular English words,
+ usually in the form of imperative sentences, such as:
+
+ send oofa.txt
+
+ which tells Kermit to send (transfer) the file whose name is oofa.txt,
+ or:
+
+ set transfer mode automatic
+
+ which sets Kermit's "transfer mode" to "automatic" (whatever that
+ means).
+
+ While typing commands, you can abbreviate, ask for help (by pressing
+ the "?" key anywhere in a command), complete keywords or filenames
+ (with the Tab or Esc key), and edit your typing with Backspace or
+ Delete, Ctrl-W, Ctrl-U, etc. You can also recall previous commands,
+ save your command history, and who knows what else. Give the INTRO
+ command for details.
+
+ C-Kermit has hundreds of commands, and they can be issued in infinite
+ variety and combinations, including commands for:
+
+ * Making connections (SET LINE, DIAL, TELNET, SSH, FTP, CONNECT,
+ ...)
+ * Breaking connections (HANGUP, CLOSE)
+ * Transferring files (SEND, GET, RECEIVE, MOVE, RESEND, ...)
+ * Establishing preferences (SET)
+ * Displaying preferences (SHOW)
+ * Managing local files (CD, DELETE, MKDIR, DIRECTORY, RENAME, TYPE,
+ ...)
+ * Managing remote files (RCD, RDEL, RMKDIR, RDIR, ...)
+ * Using local files (FOPEN, FCLOSE, FREAD, FWRITE)
+ * Programming (TAKE, DEFINE, IF, FOR, WHILE, SWITCH, DECLARE, ...)
+ * Interacting with the user (ECHO, ASK, ...)
+ * Interacting with a remote computer (INPUT, OUTPUT, ...)
+ * Interacting with local programs (RUN, EXEC, PTY, ...)
+ * Logging things (LOG SESSION, LOG PACKETS, LOG DEBUG, ...)
+
+ And of course QUIT or EXIT to get out and HELP to get help, and for
+ programmers: loops, decision making, variables, arrays, associative
+ arrays, integer and floating point arithmetic, macros, built-in and
+ user-defined functions, string manipulation, pattern matching, block
+ structure, scoping, recursion, and all the rest. To get a list of all
+ C-Kermit's commands, type a question mark (?) at the prompt. To get a
+ description of any command, type HELP followed by the name of the
+ command, for example:
+
+ help send
+
+ The command interruption character is Ctrl-C (hold down the Ctrl key
+ and press the C key).
+
+ The command language "escape character", used to introduce variable
+ names, function invocations, and so on, is backslash (\). If you need
+ to include a literal backslash in a command, type two of them, e.g.:
+
+ get c:\\k95\\k95custom.ini
+
+ Command Files, Macros, and Scripts
+
+ A file containing Kermit commands is called a Kermit command file or
+ Kermit script. It can be executed with Kermit's TAKE command:
+
+ (/current/dir) C-Kermit> take commandfile
+
+ (where "commandfile" is the name of the command file). Please don't
+ pipe a command file into Kermit's standard input (which might or might
+ not work); if you have Kermit commands in a file, tell Kermit to TAKE
+ the file.
+
+ In Unix only, a Kermit command file can also be executed directly by
+ including a "kerbang" line as the first line of the file:
+
+ #!/usr/local/bin/kermit +
+
+ That is, a top line that starts with "#!", followed immediately by the
+ full path of the Kermit executable, and then, if the Kermit script is
+ to be given arguments on the command line, a space and a plus sign.
+ The script file must also have execute permission:
+
+ chmod +x commandfile
+
+ Except for the " +" part, this is exactly the same as you would do for
+ a shell script, a Perl script, etc. Here's a simple but useless
+ example script that regurgitates its arguments (up to three of them):
+
+ #!/usr/local/bin/kermit +
+ if defined \%1 echo "Argument 1: \%1"
+ if defined \%2 echo "Argument 2: \%2"
+ if defined \%3 echo "Argument 3: \%3"
+ if defined \%4 echo "etc..."
+ exit
+
+ If this file is stored in your current directory as "commandfile",
+ then:
+
+ ./commandfile one two three four five
+
+ prints:
+
+ Argument 1: one
+ Argument 2: two
+ Argument 3: three
+ etc...
+
+ This illustrates the basic structure of a standalone Kermit script:
+ the "kerbang line", then some commands. It should end with "exit"
+ unless you want the Kermit prompt to appear when it is finished. \%1
+ is the first argument, \%2 the second, and so on.
+
+ You can also create your own commands by defining named macros
+ composed of other Kermit commands (or macros). Here's a simple
+ example:
+
+ define mydial {
+ set modem type usrobotics
+ set port /dev/ttyS0
+ if fail end 1
+ set speed 57600
+ dial \%1
+ if success connect
+ }
+
+ This shows how you can combine many commands into one command,
+ "mydial" in this case (you can use any name you like, provided it does
+ not clash with the name of a built-in command). When this macro
+ definition is in effect, you can type commands like:
+
+ mydial 7654321
+
+ and it executes all the commands in macro definition, substituting the
+ first operand ("7654321") for the formal parameter ("\%1") in the
+ definition. This saves you from having to type lots of commands every
+ time you want to make a modem call.
+
+ One way to have the macro definition in effect is to type the
+ definition at the Kermit prompt. Another way is to store the
+ definition in a file and TAKE the file. If you want the the definition
+ to be in effect automatically every time you start Kermit, put the
+ definition in your initialization or customization file (explained
+ [67]below).
+
+ Here's a somewhat more ambitious example:
+
+ define mydelete {
+ local trash
+ assign trash \v(home)trashcan/
+ if not defined \%1 end 1 "Delete what?"
+ if wild \%1 end 1 "Deleting multiple files is too scary"
+ if not exist \%1 end 1 "I can't find \%1"
+ if not directory \m(trash) {
+ mkdir \m(trash)
+ if fail end 1 "No trash can"
+ }
+ rename /list \%1 \m(trash)
+ }
+ define myundelete {
+ local trash
+ assign trash \v(home)trashcan/
+ if not defined \%1 end 1 "Undelete what?"
+ if wild \%1 end 1 "Undeleting multiple files is too hard"
+ if not directory \m(trash) end 1 "No trash can"
+ if not exist \m(trash)\%1 end 1 "I can't find \%1 in trash can"
+ rename /list \m(trash)\%1 .
+ }
+
+ These macros are not exactly production quality (they don't handle
+ filenames that include path segments, they don't handle multiple
+ files, etc), but you get the idea: you can pass arguments to macros,
+ they can check them and make other kinds of decisions, and the
+ commands themselves are relatively intuitive and intelligible.
+
+ If you put the above lines into your initialization or customization
+ file, you'll have MYDELETE and MYUNDELETE commands available every
+ time you start Kermit, at least as long as you don't suppress
+ execution of the initialization file. (Exercise for the reader: Make
+ these macros generally useful: remove limitations, add trashcan
+ display, browsing, emptying, etc.)
+
+ Kerbang scripts execute without the initialization file. This to keep
+ them portable and also to make them start faster. If you want to write
+ Kerbang scripts that depend on the initialization file, include the
+ command
+
+ take \v(home).kermrc
+
+ at the desired spot in the script. By the way, \v(xxx) is a built-in
+ variable (xxx is the variable name, "home" in this case). To see what
+ built-in variables are available, type "show variables" at the
+ C-Kermit prompt. To see what else you can show, type "show ?". \m(xxx)
+ is a user defined variable (strictly speaking, it is a macro used as a
+ variable).
+
+ Command List
+
+ C-Kermit has more than 200 top-level commands, and some of these, such
+ as SET, branch off into hundreds of subcommands of their own, so it's
+ not practical to describe them all here. Instead, here's a concise
+ list of the most commonly used top-level commands, grouped by
+ category. To learn about each command, type "help" followed by the
+ command name, e.g. "help set". Terms such as Command state and Connect
+ state are explained in subsequent sections.
+
+ Optional fields are shown in [ italicized brackets ]. filename means
+ the name of a single file. filespec means a file specification that is
+ allowed to contain wildcard characters like '*' to match groups of
+ files. options are (optional) switches like /PAGE, /NOPAGE, /QUIET,
+ etc, listed in the HELP text for each command. Example:
+
+ send /recursive /larger:10000 /after:-1week /except:*.txt *
+
+ which can be read as "send all the files in this directory and all the
+ ones underneath it that are larger than 10000 bytes, no more than one
+ week old, and whose names don't end with ".txt".
+
+ Basic Commands
+ HELP Requests top-level help.
+ HELP command Requests help about the given command.
+ INTRODUCTION Requests a brief introduction to C-Kermit.
+ LICENSE Displays the C-Kermit software copyright and license.
+ VERSION Displays C-Kermit's version number.
+ EXIT [ number ] Exits from Kermit with the given status code.
+ Synonyms: QUIT, E, Q.
+ TAKE filename [ parameters... ] Executes commands from the
+ given file.
+ LOG item [ filename ] Keeps a log of the given item in the
+ given file.
+ [ DO ] macro [ parameters... ] Executes commands from the
+ given macro.
+ SET parameter value Sets the given parameter to the given
+ value.
+ SHOW category Shows settings in a given category.
+ STATUS Tells whether previous command succeeded or failed.
+ DATE [ date-and/or-time ] Shows current date-time or interprets
+ given date-time.
+ RUN [ extern-command [ parameters... ] Runs the given external
+ command. Synonym: !.
+ EXEC [ extern-command [ params... ] Kermit overlays itself with
+ the given command.
+ SUSPEND Stops Kermit and puts it in the background. Synonym: Z.
+
+ Local File Management
+ TYPE [ options ] filename Displays the contents of the given
+ file.
+ MORE [ options ] filename Equivalent to TYPE /PAGE (pause after
+ each screenful).
+ CAT [ options ] filename Equivalent to TYPE /NOPAGE.
+ HEAD [ options ] filename Displays the first few lines of a
+ given file.
+ TAIL [ options ] filename Displays the last few lines of a
+ given file.
+ GREP [ options ] pattern filespec Displays lines from files
+ that match the pattern. Synonym: FIND.
+ DIRECTORY [ options ] [ filespec ] Lists files (built-in, many
+ options).
+ LS [ options ] [ filespec ] Lists files (runs external "ls"
+ command).
+ DELETE [ options ] [ filespec ] Deletes files. Synonym: RM.
+ PURGE [ options ] [ filespec ] Removes backup (*.~n~) files.
+ COPY [ options ] [ filespecs... ] Copies files. Synonym: CP.
+ RENAME [ options ] [ filespecs... ] Renames files. Synonym: MV.
+ CHMOD [ options ] [ filespecs... ] Changes permissions of
+ files.
+ TRANSLATE filename charsets filename ] Converts file's
+ character set. Synonym: XLATE.
+ CD Changes your working directory to your home directory.
+ CD directory Changes your working directory to the one given.
+ CDUP Changes your working directory one level up.
+ PWD Displays your working directory.
+ BACK Returns to your previous working directory.
+ MKDIR [ directory ] Creates a directory.
+ RMDIR [ directory ] Removes a directory.
+
+ Making Connections
+ SET LINE [ options ] devicename Opens the named serial
+ port. Synonym: SET PORT.
+ OPEN LINE [ options ] devicename Same as SET LINE. Synonym:
+ OPEN PORT.
+ SET MODEM TYPE [ name ] Tells Kermit what kind of modem is on
+ the port.
+ DIAL [ number ] Tells Kermit to dial the given phone number
+ with the modem.
+ REDIAL Redials the most recently dialed phone number.
+ ANSWER Waits for and answers an incoming call on the modem.
+ AUTHENTICATE [ parameters... ] Performs secure authentication
+ on a TCP/IP connection.
+ SET NETWORK TYPE { TCP/IP, X.25, ... } Selects network type for
+ subsequent SET HOST commands.
+ SET HOST [ options ] host [ port ] Opens a network connection
+ to the given host and port.
+ SET HOST [ options ] * port Waits for an incoming TCP/IP
+ connection on the given port.
+ TELNET [ options ] host Opens a Telnet connection to the host
+ and enters Connect state.
+ RLOGIN [ options ] host Opens an Rlogin connection to the host
+ and enters Connect state.
+ IKSD [ options ] host Opens a connection to an Internet Kermit
+ Service.
+ SSH [ options ] host Opens an SSH connection to the host and
+ enters Connect state.
+ FTP OPEN host [ options ] Opens an FTP connection to the host.
+ HTTP [ options ] OPEN host Opens an HTTP connection to the
+ host.
+ PTY external-command Runs the command on a pseudoterminal as if
+ it were a connection.
+ PIPE external-command Runs the command through a pipe as if it
+ were a connection.
+
+ Using Connections
+ CONNECT [ options ] Enters Connect
+ (terminal) state. Synonym: C.
+ REDIRECT command Redirects the given external command over the
+ connection.
+ TELOPT command Sends a Telnet protocol command (Telnet
+ connections only).
+ Ctrl-\C "Escapes back" from Connect state to Command state.
+ Ctrl-\B (In Connect state) Sends a BREAK signal (serial or
+ Telnet).
+ Ctrl-\! (In Connect state) Enters inferior shell; "exit" to
+ return.
+ Ctrl-\? (In Connect state) Shows a menu of other escape-level
+ options.
+ Ctrl-\Ctrl-\ (In Connect state) Type two Ctrl-Backslashes to
+ send one of them.
+ SET ESCAPE [ character ] Changes Kermit's Connect-state escape
+ character.
+
+ Closing Connections
+ HANGUP Hangs up the currently open serial-port or network
+ connection.
+ CLOSE Closes the currently open serial-port or network
+ connection.
+ SET LINE (with no devicename) Closes the currently
+ open serial-port or network connection.
+ SET HOST (with no hostname) Closes the currently open
+ serial-port or network connection.
+ FTP CLOSE Closes the currently open FTP connection.
+ HTTP CLOSE Closes the currently open HTTP connection.
+ EXIT Also closes all connections. Synonym: QUIT.
+ SET EXIT WARNING OFF Suppresses warning about open connections
+ on exit or close.
+
+ File Transfer
+ SEND [ options ] filename [ as-name ] Sends the given file.
+ Synonym: S.
+ SEND [ options ] filespec Sends all files that match.
+ RESEND [ options ] filespec Resumes an interupted SEND from the
+ point of failure.
+ RECEIVE [ options ] [ as-name ] Waits passively for files to
+ arrive. Synonym: R.
+ LOG TRANSACTIONS [ filename ] Keeps a record of file transfers.
+ FAST Use fast file-transfer settings (default).
+ CAUTIOUS Use cautious and less fast file-transfer settings.
+ ROBUST Use ultra-conservative and slow file-transfer settings.
+ STATISTICS [ options ] Gives statistics about the most recent
+ file transfer.
+ WHERE After transfer: "Where did my files go?".
+ TRANSMIT [ options ] [ filename ] Sends file without protocol.
+ Synonym: XMIT.
+ LOG SESSION [ filename ] Captures remote text or files without
+ protocol.
+ SET PROTOCOL [ name... ] Tells Kermit to use an external
+ file-transfer protocol.
+ FTP { PUT, MPUT, GET, MGET, ... } FTP client commands.
+ HTTP { PUT, GET, HEAD, POST, ... } HTTP client commands.
+
+ Kermit Server
+ ENABLE, DISABLE Controls which features
+ can be used by clients.
+ SET SERVER Sets parameters prior to entering Server state.
+ SERVER Enters Server state.
+
+ Client of Kermit or FTP Server
+ [ REMOTE ] LOGIN [ user password ] Logs in to a Kermit server
+ or IKSD that requires it.
+ [ REMOTE ] LOGOUT Logs out from a Kermit server or IKSD.
+ SEND [ options ] filename [ as-name ] Sends the given file to
+ the server. Synonyms: S, PUT.
+ SEND [ options ] filespec Sends all files that match.
+ RESEND [ options ] filespec Resumes an interupted SEND from the
+ point of failure.
+ GET [ options ] remote-filespec Asks the server to send the
+ given files. Synonym: G.
+ REGET [ options ] remote-filespec Resumes an interrupted GET
+ from the point of failure.
+ REMOTE CD [ directory ] Asks server to change its working
+ directory. Synonym: RCD.
+ REMOTE PWD [ directory ] Asks server to display its working
+ directory. Synonym: RPWD.
+ REMOTE DIRECTORY [ filespec... ] Asks server to send a
+ directory listing. Synonym: RDIR.
+ REMOTE DELETE [ filespec... ] Asks server to delete files.
+ Synonym: RDEL.
+ REMOTE [ command... ] (Many other commands: "remote ?" for a
+ list).
+ MAIL [ options ] filespec Sends file(s) to be delivered as
+ e-mail (Kermit only).
+ FINISH Asks the server to exit server state (Kermit only).
+ BYE Asks the server to log out and close the connection.
+
+ Script Programming
+ DEFINE, DECLARE, UNDEFINE, UNDECLARE, ASSIGN, EVALUATE,
+ SEXPRESSION, ARRAY, SORT, INPUT, OUTPUT, IF, FOR, WHILE,
+ SWITCH, GOTO, ECHO, ASK, GETC, GETOK, ASSERT, WAIT, SLEEP,
+ FOPEN, FREAD, FWRITE, FCLOSE, STOP, END, RETURN, LEARN, SHIFT,
+ TRACE, VOID, INCREMENT, DECREMENT, ... For these and many more
+ you'll need to consult the [68]manual and supplements, and/or
+ visit the [69]Kermit Script Library, which also includes a
+ brief tutorial. Hint: HELP LEARN to find out how to get Kermit
+ to write simple scripts for you.
+
+ Many of Kermit's commands have synonyms, variants, relatives, and so
+ on. For example, MSEND is a version of SEND that accepts a list of
+ file specifications to be sent, rather than just one file
+ specification, and MPUT is a synonym of MSEND. MOVE means to SEND and
+ then DELETE the source file if successful. MMOVE is like MOVE, but
+ accepts a list of filespecs, and so on. These are described in the
+ [70]full documentation.
+
+ Use question mark to feel your way through an unfamiliar command, as
+ in this example (the part you type is underlined):
+
+ C-Kermit> remote ? One of the following:
+ assign delete help login print rename space
+ cd directory host logout pwd rmdir type
+ copy exit kermit mkdir query set who
+ C-Kermit> remote set ? One of the following:
+ attributes file retry transfer
+ block-check receive server window
+ C-Kermit> remote set file ? One of the following:
+ character-set incomplete record-length
+ collision names type
+ C-Kermit> remote set file names ? One of the following:
+ converted literal
+ C-Kermit> remote set file names literal
+ C-Kermit>
+
+ This is called menu on demand: you get a menu when you want one, but
+ menus are not forced on you even when know what you're doing. Note
+ that you can also abbreviate most keywords, and you can complete them
+ with the Tab or Esc key. Also note that ? works for filenames too, and
+ that you can use it in the middle of a keyword or filename, not just
+ at the beginning. For example, "send x?" lists all the files in the
+ current directory whose names start with 'x'.
+
+ [ [71]Kermit Home ] [ [72]C-Kermit Home ] [ [73]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ INITIALIZATION FILE [ [74]Top ] [ [75]Contents ] [ [76]Next ] [ [77]Previous
+ ]
+
+ In its default configuration, C-Kermit executes commands from a file
+ called .kermrc in your home directory when it starts, unless it is
+ given the -Y or -y command-line option. Custom configurations might
+ substitute a shared system-wide initialization file. The SHOW FILE
+ command tells what initialization file, if any, was used. The standard
+ initialization file "chains" to an individual customization file,
+ .mykermc, in the home directory, in which each user can establish
+ her/his own preferences, define macros, and so on.
+
+ Since execution of the initialization file (at least the standard one)
+ makes C-Kermit take longer to start, it might be better not to have an
+ initialization file, especially now that Kermit's default startup
+ configuration is well attuned to modern computing and networking -- in
+ other words, you no longer have do anything special to make Kermit
+ transfers go fast. So instead of having an initialization file that is
+ executed every time Kermit starts, you might consider making one or
+ more kerbang scripts (with names other that .kermrc) that do NOT
+ include an "exit" command, and invoke those when you need the
+ settings, macro definitions, and/or scripted actions they contain, and
+ invoke C-Kermit directly when you don't.
+
+ To put it another way... We still distribute the standard
+ initialization file since it's featured in the manual and backwards
+ compatibility is important to us. But there's no harm in not using it
+ if you don't need the stuff that's in it (services directory, dialing
+ directory, network directory, and associated macro definitions). On
+ the other hand, if there are settings or macros you want in effect
+ EVERY time you use Kermit, the initialization file (or the
+ customization file it chains to) is the place to put them, because
+ that's the only place Kermit looks for them automatically each time
+ you start it.
+
+ [ [78]Kermit Home ] [ [79]C-Kermit Home ] [ [80]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ MODES OF OPERATION [ [81]Top ] [ [82]Contents ] [ [83]Next ] [ [84]Previous ]
+
+ Kermit is said to be in Local mode if it has made a connection to
+ another computer, e.g. by dialing it or establishing a Telnet
+ connection to it. The other computer is remote, so if you start
+ another copy of Kermit on the remote computer, it is said to be in
+ Remote mode (as long as it has not made any connections of its own).
+ The local Kermit communicates over the communications device or
+ network connection, acting as a conduit between the the remote
+ computer and your keyboard and screen. The remote Kermit is the
+ file-transfer partner to the local Kermit and communicates only
+ through its standard input and output.
+
+ At any moment, a Kermit program can be in any of the following states.
+ It's important to know what they are and how to change from one to the
+ other.
+
+ Command state
+
+ In this state, Kermit reads commands from:
+
+ + Your keyboard; or:
+ + A file, or:
+ + A macro definition.
+
+ You can exit from Command state back to Unix with the EXIT or
+ QUIT command (same thing). You can enter Connect state with any
+ of various commands (CONNECT, DIAL, TELNET, etc). You can enter
+ file transfer state with commands like SEND, RECEIVE, and GET.
+ You can enter Server state with the SERVER command. The TAKE
+ command tells Kermit to read and execute commands from a file.
+ The (perhaps implied) DO command tells Kermit to read and
+ execute commands from a macro definition. While in Command
+ state, you can interrupt any command, macro, or command file by
+ typing Ctrl-C (hold down the Ctrl key and press the C key);
+ this normally brings you back to the prompt.
+
+ Shell state
+
+ You can invoke an inferior shell or external command from the
+ Kermit command prompt by using the PUSH, RUN (!), EDIT, or
+ BROWSE command. While the inferior shell or command is active,
+ Kermit is suspended and does nothing. Return to Kermit Command
+ state by exiting from the inferior shell or application.
+
+ Connect state
+
+ In this state, which can be entered only when in Local mode
+ (i.e. when Kermit has made a connection to another computer),
+ Kermit is acting as a terminal to the remote computer. Your
+ keystrokes are sent to the remote computer and characters that
+ arrive over the communication connection are displayed on your
+ screen. This state is entered when you give a CONNECT, DIAL,
+ TELNET, RLOGIN, or IKSD command. You can return to command
+ state by logging out of the remote computer, or by typing:
+
+ Ctrl-\c
+
+ That is: Hold down the Ctrl key and press the backslash key,
+ then let go of the Ctrl key and press the C key. This is called
+ escaping back. Certain other escape-level commands are also
+ provided; type Ctrl-\? for a list. For example, you can enter
+ Shell state with:
+
+ Ctrl-\!
+
+ To send a Ctrl-\ to the host while in Connect state, type two
+ of them in a row. See HELP CONNECT and HELP SET ESCAPE for more
+ info.
+
+ Local file-transfer state
+
+ In this state, Kermit is sending packets back and forth with
+ the other computer in order to transfer a file or accomplish
+ some other file-related task. And at the same time, it is
+ displaying its progress on your screen and watching your
+ keyboard for interruptions. In this state, the following
+ single-keystroke commands are accepted:
+
+ X Interrupt the current file and go on to the next (if any).
+ Z Interrupt the current file and skip all the rest.
+ E Like Z but uses a "stronger" protocol (use if X or Z don't
+ work).
+ Ctrl-C Interrupt file-transfer mode (use if Z or E don't
+ work).
+
+ Kermit returns to its previous state (Command or Connect) when
+ the transfer is complete or when interrupted successfully by X,
+ Z, E, or Ctrl-C (hold down the Ctrl key and press the C key).
+
+ Remote file-transfer state
+
+ In this state, Kermit is exchanging file-transfer packets with
+ its local partner over its standard i/o. It leaves this state
+ automatically when the transfer is complete. In case you find
+ your local Kermit in Connect state and the remote one in
+ File-transfer state (in which it seems to ignore your
+ keystrokes), you can usually return it to command state by
+ typing three Ctrl-C's in a row. If that doesn't work, return
+ your local Kermit to Command state (Ctrl-\ C) and type
+ "e-packet" and then press the Return or Enter key; this forces
+ a fatal Kermit protocol error.
+
+ Remote Server state
+
+ This is like Remote File-transfer state, except it never
+ returns automatically to Command state. Rather, it awaits
+ further instructions from the client program; that is, from
+ your Local Kermit program. You can return the Remote Server to
+ its previous state by issuing a "finish" command to the client,
+ or if you are in Connect state, by typing three Ctrl-C's in a
+ row. You can tell the server job to log out and break the
+ connection by issuing a "bye" command to the client.
+
+ Local Server state
+
+ Like Remote-Server state, but in local mode, and therefore with
+ its file-transfer display showing, and listening for single-key
+ commands, as in Local File-transfer state. Usually this state
+ is entered automatically when a remote Kermit program gives a
+ GET command.
+
+ C-Kermit, Kermit 95, and MS-DOS Kermit all can switch automatically
+ from Connect state to Local File-transfer state when you initiate a
+ file transfer from the remote computer by starting Kermit and telling
+ it to send or get a file, in which case, Connect state is
+ automatically resumed after the file transfer is finished.
+
+ Note that C-Kermit is not a terminal emulator. It is a communications
+ application that you run in a terminal window (e.g. console or Xterm).
+ The specific emulation, such as VT100, VT220, Linux Console, or Xterm,
+ is provided by the terminal window in which you are running C-Kermit.
+ Kermit 95 and MS-DOS Kermit, on the other hand, are true terminal
+ emulators. Why is C-Kermit not a terminal emulator? [85]CLICK HERE to
+ read about it.
+
+ [ [86]Kermit Home ] [ [87]C-Kermit Home ] [ [88]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ MAKING CONNECTIONS [ [89]Top ] [ [90]Contents ] [ [91]Next ] [ [92]Previous ]
+
+ Here is how to make different kinds of connections using interactive
+ Kermit commands (as noted above, you can also make connections with
+ command-line options). Note that you don't have to make connections
+ with Kermit. It can also be used on the far end of a connection as the
+ remote file transfer and management partner of your local
+ communications software.
+
+ Making a Telnet Connection
+
+ At the C-Kermit command prompt, simply type:
+
+ telnet foo.bar.com ; Substitute desired host name or address.
+ telnet xyzcorp.com 3000 ; You can also include a port number.
+
+ If the connection is successful, Kermit automically enters
+ Connect state. When you logout from the remote host, Kermit
+ automatically returns to its prompt. More info: HELP TELNET,
+ HELP SET TELNET, HELP SET TELOPT. Also see the [93]IKSD section
+ below.
+
+ Making an Rlogin connection
+
+ This is just like Telnet, except you have to be root to do it
+ because Rlogin uses a privileged TCP port:
+
+ rlogin foo.bar.com ; Substitute desired host name or address.
+
+ More info: HELP RLOGIN.
+
+ Making an SSH Connection
+
+ Unlike Telnet and Rlogin, SSH connections are not built-in, but
+ handled by running your external SSH client through a
+ pseudoterminal. Using C-Kermit to control the SSH client gives
+ you all of Kermit's features (file transfer, character-set
+ conversion, scripting, etc) over SSH.
+
+ ssh foo.bar.com ; Substitute desired host name or address.
+
+ More info: HELP SSH, HELP SET SSH.
+
+ Dialing with a Modem
+
+ If it's an external modem, make sure it is connected to a
+ usable serial port on your computer with a regular
+ (straight-through) modem cable, and to the telephone jack with
+ a telephone cable, and that it's turned on. Then use these
+ commands:
+
+ set modem type usrobotics ; Or other supported type
+ set line /dev/ttyS0 ; Specify device name
+ set speed 57600 ; Or other desired speed
+ set flow rts/cts ; Most modern modems support this
+ set dial method tone ; (or pulse)
+ dial 7654321 ; Dial the desired number
+
+ Type "set modem type ?" for a list of supported modem types. If
+ you omit the SET MODEM TYPE command, the default type is
+ "generic-high-speed", which should work for most modern
+ AT-command-set modems. If the line is busy, Kermit redials
+ automatically. If the call does not succeed, use "set dial
+ display on" and try it again to watch what happens. If the call
+ succeeds, Kermit enters Connect state automatically and returns
+ to its prompt automatically when you log out from the remote
+ computer or the connection is otherwise lost.
+
+ You can also dial from a modem that is accessible by Telnet,
+ e.g. to a reverse terminal server. In this case the command
+ sequence is:
+
+ set host ts.xxx.com 2000 ; Terminal-server and port
+ set modem type usrobotics ; Or other supported type
+ set dial method tone ; (or pulse)
+ dial 7654321 ; Dial the desired number
+
+ If the terminal server supports the Telnet Com Port Option,
+ [94]RFC 2217, you can also give serial-port related commands
+ such as SET SPEED, SET PARITY, and so on, and Kermit relays
+ them to the terminal server using the protocol specified in the
+ RFC.
+
+ More info: HELP SET MODEM, HELP SET LINE, HELP SET SPEED, HELP
+ SET FLOW, HELP DIAL, HELP SET DIAL, HELP SET MODEM, HELP SET
+ CARRIER-WATCH, SHOW COMMUNICATIONS, SHOW MODEM, SHOW DIAL.
+
+ Direct Serial Port
+
+ Connect the two computers, A and B, with a null modem cable (or
+ two modem cables interconnected with a null-modem adapter or
+ modem eliminator). From Computer A:
+
+ set modem type none ; There is no modem
+ set line /dev/ttyS0 ; Specify device name
+ set carrier-watch off ; If DTR and CD are not cross-connected
+ set speed 57600 ; Or other desired speed
+ set flow rts/cts ; If RTS and CTS are cross-connected
+ set flow xon/xoff ; If you can't use RTS/CTS
+ set parity even ; (or "mark" or "space", if necessary)
+ set stop-bits 2 ; (rarely necessary)
+ connect ; Enter Connect (terminal) state
+
+ This assumes Computer B is set up to let you log in. If it
+ isn't, you can run a copy of Kermit on Computer B and follow
+ approximately the same directions. More info: As above plus
+ HELP CONNECT.
+
+ With modems or direct serial connections, you might also have to "set
+ parity even" (or "mark" or "space") if it's a 7-bit connection.
+
+ Of the connection types listed above, only one can be open at a time.
+ However, any one of these can be open concurrently with an [95]FTP or
+ HTTP session. Each connection type can be customized to any desired
+ degree, scripted, logged, you name it. See the manual.
+
+ NOTE: On selected platforms, C-Kermit also can make X.25 connections.
+ See the manual for details.
+
+ [ [96]Kermit Home ] [ [97]C-Kermit Home ] [ [98]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ TRANSFERRING FILES WITH KERMIT [ [99]Top ] [ [100]Contents ] [ [101]Next ] [
+ [102]Previous ]
+
+ * [103]Downloading Files
+ * [104]Uploading Files
+ * [105]Kermit Transfers the Old-Fashioned Way
+ * [106]If File Transfer Fails
+ * [107]Advanced Kermit File Transfer Features
+ * [108]Non-Kermit File Transfer
+
+ There is a [109]widespread and persistent belief that Kermit is a slow
+ protocol. This is because, until recently, it used conservative tuning
+ by default to make sure file transfers succeeded, rather than failing
+ because they overloaded the connection. Some extra commands (or
+ command-line options, like -Q) were needed to make it go fast, but
+ nobody bothered to find out about them. Also, it takes two to tango:
+ most non-Kermit-Project Kermit protocol implementations really ARE
+ slow. The best file-transfer partners for C-Kermit are: another copy
+ of [110]C-Kermit (7.0 or later) and [111]Kermit 95. These combinations
+ work well and they work fast by default. MS-DOS Kermit is good too,
+ but you have to tell it to go fast (by giving it the FAST command).
+
+ Furthermore, all three of these Kermit programs support "autodownload"
+ and "autoupload", meaning that when they are in Connect state and a
+ Kermit packet comes in from the remote, they automatically switch into
+ file transfer mode.
+
+ And plus, C-Kermit and K95 also switch automatically between text and
+ binary mode for each file, so there is no need to "set file type
+ binary" or "set file type text", or to worry about files being
+ corrupted because they were transferred in the wrong mode.
+
+ What all of these words add up to is that now, when you use up-to-date
+ Kermit software from the Kermit Project, file transfer is not only
+ fast, it's ridiculously easy. You barely have to give any commands at
+ all.
+
+ Downloading Files
+
+ Let's say you have [112]Kermit 95, [113]C-Kermit, or
+ [114]MS-DOS Kermit on your desktop computer, with a connection
+ to a Unix computer that has C-Kermit installed as "kermit". To
+ download a file (send it from Unix to your desktop computer),
+ just type the following command at your Unix shell prompt:
+
+ kermit -s oofa.txt
+
+ (where oofa.txt is the filename). If you want to send more than
+ one file, you can put as many filenames as you want on the
+ command line, and they can be any combination of text and
+ binary:
+
+ kermit -s oofa.txt oofa.zip oofa.html oofa.tar.gz
+
+ and/or you can use wildcards to send groups of files:
+
+ kermit -s oofa.*
+
+ If you want to send a file under an assumed name, use:
+
+ kermit -s friday.txt -a today.txt
+
+ This sends the file friday.txt but tells the receiving Kermit
+ that its name is today.txt. In all cases, as noted, when the
+ file transfer is finished, your desktop Kermit returns
+ automatically to Connect state. No worries about escaping back,
+ re-connecting, text/binary mode switching. Almost too easy,
+ right?
+
+ Uploading Files
+
+ To upload files (send them from your desktop computer to the
+ remote Unix computer) do the same thing, but use the -g (GET)
+ option instead of -s:
+
+ kermit -g oofa.txt
+
+ This causes your local Kermit to enter server mode; then the
+ remote Kermit program requests the named file and the local
+ Kermit sends it and returns automatically to Connect state when
+ done.
+
+ If you want to upload multiple files, you have have use shell
+ quoting rules, since these aren't local files:
+
+ kermit -g "oofa.txt oofa.zip oofa.html oofa.tar.gz"
+ kermit -g "oofa.*"
+
+ If you want to upload a file but store it under a different
+ name, use:
+
+ kermit -g friday.txt -a today.txt
+
+ Kermit Transfers the Old-Fashioned Way
+
+ If your desktop communications software does not support
+ autoupload or autodownload, or it does not include Kermit
+ server mode, the procedure requires more steps.
+
+ To download a file, type:
+
+ kermit -s filename
+
+ on the host as before, but if nothing happens automatically in
+ response to this command, you have to switch your desktop
+ communications software into Kermit Receive state. This might
+ be done by escaping back using keyboard characters or hot keys
+ (Alt-x is typical) and/or with a command (like RECEIVE) or a
+ menu. When the file transfer is complete, you have to go back
+ to Connect state, Terminal emulation, or whatever terminology
+ applies to your desktop communications software.
+
+ To upload a file, type:
+
+ kermit -r
+
+ on the host (rather than "kermit -g"). This tells C-Kermit to
+ wait passively for a file to start arriving. Then regain the
+ attention of your desktop software (Alt-x or whatever) and
+ instruct it to send the desired file(s) with Kermit protocol.
+ When the transfer is finished, return to the Connect or
+ Terminal screen.
+
+ If File Transfer Fails
+
+ Although every aspect of Kermit's operation can be finely
+ tuned, there are also three short and simple "omnibus tuning"
+ commands you can use for troubleshooting:
+
+ FAST
+ Use fast file-transfer settings. This has been the
+ default since C-Kermit 7.0 now that most modern computers
+ and connections support it. If transfers fail with fast
+ settings, try . . .
+
+ CAUTIOUS
+ Use cautious but not paranoid settings. File transfers,
+ if they work, will go at medium speed. If not, try . . .
+
+ ROBUST
+ Use the most robust, resilient, conservative, safe, and
+ reliable settings. File transfers will almost certainly
+ work, but they will be quite slow (of course this is a
+ classic tradeoff; ROBUST was C-Kermit's default tuning in
+ versions 6.0 and earlier, which made everybody think
+ Kermit protocol was slow). If ROBUST doesn't do the
+ trick, try again with SET PARITY SPACE first in case it's
+ not an 8-bit connection.
+
+ Obviously the success and performance of a file transfer also
+ depends on C-Kermit's file transfer partner. Up-to-date, real
+ [115]Kermit Project partners are recommended because they
+ contain the best Kermit protocol implementations and because
+ [116]we can support them in case of trouble.
+
+ If you still have trouble, consult Chapter 10 of [117]Using
+ C-Kermit, or send email to [118]kermit-support@columbia.edu.
+
+ Advanced Kermit File-Transfer Features
+
+ Obviously there is a lot more to Kermit file transfer,
+ including all sorts of interactive commands, preferences,
+ options, logging, debugging, troubleshooting, and anything else
+ you can imagine but that's what the [119]manual and updates are
+ for. Here are a few topics you can explore if you're interested
+ by Typing HELP for the listed commands:
+
+ Logging transfers:
+ LOG TRANSACTIONS (HELP LOG)
+
+ Automatic per-file text/binary mode switching:
+ SET TRANSFER MODE { AUTOMATIC, MANUAL } (HELP SET
+ TRANSFER).
+
+ Cross-platform recursive directory tree transfer:
+ SEND /RECURSIVE, GET /RECURSIVE (HELP SEND, HELP GET).
+
+ File collision options:
+ SET FILE COLLISION { OVERWRITE, BACKUP, DISCARD, ... }
+ (HELP SET FILE).
+
+ Update mode (only transfer files that changed since last time):
+ SET FILE COLLISION UPDATE (HELP SET FILE).
+
+ Filename selection patterns:
+ (HELP WILDCARD).
+
+ Flexible file selection:
+ SEND (or GET) /BEFORE /AFTER /LARGER /SMALLER /TYPE
+ /EXCEPT, ...
+
+ Character-set conversion:
+ SET { FILE, TRANSFER } CHARACTER-SET, ASSOCIATE, ...
+
+ File/Pathname control:
+ SET { SEND, RECEIVE } PATHNAMES, SET FILE NAMES.
+
+ Atomic file movement:
+ SEND (or GET) /DELETE /RENAME /MOVE-TO
+
+ Transferring to/from standard i/o of other commands:
+ SEND (or GET) /COMMAND
+
+ Recovery of interrupted transfer from point of failure:
+ RESEND, REGET (HELP RESEND, HELP REGET).
+
+ Non-Kermit File Transfer
+
+ You can also use C-Kermit to transfer files with FTP or HTTP
+ Internet protocols; [120]see below.
+
+ On a regular serial or Telnet connection where the other
+ computer doesn't support Kermit protocol at all, you have
+ several options. For example, if your desktop communications
+ software supports Zmodem, use "rz" and "sz" on the host rather
+ than Kermit. But if Kermit is your desktop software, and you
+ are using it to make calls or network connections to other
+ computers that don't support Kermit protocol (or that don't
+ have a good implementation of it), then if your computer also
+ has external X, Y, or Zmodem programs that are redirectable,
+ Kermit can use them as external protocols. HELP SET PROTOCOL
+ for details.
+
+ You can also capture "raw" data streams from the other computer
+ with LOG SESSION (HELP LOG and HELP SET SESSION-LOG for
+ details), and you can upload files without any protocol at all
+ with TRANSMIT (HELP TRANSMIT, HELP SET TRANSMIT).
+
+ [ [121]Kermit Home ] [ [122]C-Kermit Home ] [ [123]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ KERMIT CLIENT/SERVER CONNECTIONS [ [124]Top ] [ [125]Contents ] [ [126]Next ]
+ [ [127]Previous ]
+
+ On any kind of connection you can make with Kermit -- serial, TCP/IP,
+ X.25, etc -- you can set up a convenient client/server relationship
+ between your Kermit client (the one that made the connection) and the
+ Kermit program on the far end of the connection (the remote Kermit) by
+ putting the remote Kermit in server mode. This is normally done by
+ giving it a SERVER command, or by starting it with the -x command-line
+ option. In some cases ([128]Internet Kermit Service, SSH connections
+ to a Kermit subsystem, or specially configured hosts), there is
+ already a Kermit server waiting on the far end. Here is a quick
+ synopsis of the commands you can give to the client for interacting
+ with the server:
+
+ SEND [ switches ] filename
+ Sends the named file to the server. The filename can include
+ wildcards. Lots of switches are available for file selection,
+ etc. Type HELP SEND at the client prompt for details.
+
+ GET [ switches ] filename
+ Asks the server to send the named file. The filename can
+ include wildcards. Type HELP GET at the client prompt for
+ details.
+
+ BYE
+ Terminates the server and closes your connection to it.
+
+ FINISH
+ Terminates the server. If you started the server yourself, this
+ leaves the remote host at its shell prompt. If it was a
+ dedicated server (such as IKSD or an SSH subsystem), FINISH is
+ equivalent to BYE.
+
+ SET LOCUS { LOCAL, REMOTE, AUTO }
+ (C-Kermit 8.0.201 and later, K95 1.1.21 and later) This tells
+ the client whether file-management commands like CD, PWD,
+ DIRECTORY, DELETE, MKDIR, etc, should be executed locally or by
+ the server. In this type of connection, the default is LOCAL.
+ Use SET LOCUS REMOTE if you want Kermit to behave like an FTP
+ client, in which case these commands are executed remotely, and
+ their local versions must have an L prefix: LCD, LPWD,
+ LDIRECTORY, etc. When LOCUS is LOCAL, then the remote versions
+ must have an R prefix: RCD, RPWD, RDIRECTORY, etc. HELP SET
+ LOCUS for details. SHOW COMMAND to see current locus.
+
+ The following commands are affected by SET LOCUS:
+
+ CD, LCD, RCD
+ Change (working, current) directory. HELP CD for details.
+
+ CDUP, LCDUP, RCDUP
+ CD one level up.
+
+ DIRECTORY, LDIRECTORY, RDIRECTORY
+ Produce a directory listing. Many options are available for local
+ listings. HELP DIRECTORY for details.
+
+ DELETE, LDELETE, RDELETE
+ Deletes files or directories. Many options available, HELP DELETE.
+
+ RENAME, LRENAME, RRENAME
+ Renames files or directories. Many options available, HELP RENAME.
+
+ MKDIR, LMKDIR, RMKDIR
+ Creates a directory. HELP MKDIR.
+
+ RMDIR, LRMDIR, RRMDIR
+ Removes a directory. HELP RMDIR. There are dozens -- maybe hundreds --
+ of other commands, described in the built-in help, on the website,
+ and/or in the published or online manuals. But even if you don't have
+ access to documentation, you can "set locus remote" and then use
+ pretty much the same commands you would use with any FTP client.
+
+ [ [129]Kermit Home ] [ [130]C-Kermit Home ] [ [131]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ KERMIT'S BUILT-IN FTP AND HTTP CLIENTS [ [132]Top ] [ [133]Contents ] [
+ [134]Next ] [ [135]Previous ]
+
+ Kermit's FTP client is like the regular Unix FTP client that you're
+ used to, but with some differences:
+
+ * It has lots more commands and features.
+ * You can have an FTP session and a regular Kermit serial or Telnet
+ session open at the same time.
+ * FTP sessions can be fully automated.
+
+ By default Kermit's FTP client tries its best to present the same user
+ interface as a regular FTP client: PUT, GET, DIR, CD, BYE, etc, should
+ work the same, even though some of these commands have different
+ meaning in Kermit-to-Kermit connections; for example, CD, DIR, RENAME,
+ etc, in Kermit act locally, whereas in FTP they are commands for the
+ server. This might cause some confusion, but as in all things Kermit,
+ you have total control:
+
+ * The [136]SET LOCUS command lets you specify where file management
+ commands should be executed -- locally or remotely -- for any kind
+ of connection.
+ * Any FTP command can be prefixed with the word "FTP" to remove any
+ ambiguity.
+
+ Pending publication of the next edition of the manual, the Kermit FTP
+ client is thoroughly documented at the Kermit Project website:
+
+ [137]http://www.columbia.edu/kermit/ftpclient.html
+
+ You also can use HELP FTP and HELP SET FTP to get descriptions of
+ Kermit's FTP-related commands.
+
+ The HTTP client is similar to the FTP one, except you prefix each
+ command with HTTP instead of FTP: HTTP OPEN, HTTP GET, HTTP PUT, HTTP
+ CLOSE, etc. Type HELP HTTP for details, or visit the to view the
+ [138]manual supplements. HTTP connections can be open at the same time
+ as regular serial or Telnet connections and FTP connections. So Kermit
+ can manage up to three types connections simultaneously.
+
+ [ [139]Kermit Home ] [ [140]C-Kermit Home ] [ [141]C-Kermit FAQ ] [
+ [142]FTP Client ] [ [143]HTTP Client ]
+ ________________________________________________________________________
+
+ INTERNET KERMIT SERVICE [ [144]Top ] [ [145]Contents ] [ [146]Next ] [
+ [147]Previous ]
+
+ C-Kermit can be configured and run as an Internet service (called
+ IKSD), similar to an FTP server (FTPD) except you can (but need not)
+ interact with it directly, plus it does a lot more than an FTP server
+ can do. The TCP port for IKSD is 1649. It uses Telnet protocol.
+ C-Kermit can be an Internet Kermit Server, or it can be a client of an
+ IKSD. You can make connections from C-Kermit to an IKSD with any of
+ the following commands:
+
+ telnet foo.bar.edu 1649
+ telnet foo.bar.edu kermit ; if "kermit" is listed in /etc/services
+ iksd foo.bar.edu
+
+ The IKSD command is equivalent to a TELNET command specifying port
+ 1649. For more information about making and using connections to an
+ IKSD, see:
+
+ [148]http://www.columbia.edu/kermit/cuiksd.html
+
+ You can run an Internet Kermit Service on your own computer too (if
+ you are the system administrator). For instructions, see:
+
+ [149]http://www.columbia.edu/kermit/iksd.html
+
+ [ [150]Kermit Home ] [ [151]C-Kermit Home ] [ [152]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ SECURITY [ [153]Top ] [ [154]Contents ] [ [155]Next ] [ [156]Previous ]
+
+ All of C-Kermit's built-in TCP/IP networking methods (Telnet, Rlogin,
+ IKSD, FTP, and HTTP) can be secured by one or more of the following
+ IETF-approved methods:
+
+ * MIT Kerberos IV
+ * MIT Kerberos V
+ * SSL/TLS
+ * Stanford SRP
+
+ For complete instructions see:
+
+ [157]http://www.columbia.edu/kermit/security.html
+
+ And as noted previously, you can also make SSH connections with
+ C-Kermit if you already have an SSH client installed.
+
+ [ [158]Kermit Home ] [ [159]C-Kermit Home ] [ [160]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ ALTERNATIVE COMMAND-LINE PERSONALITIES [ [161]Top ] [ [162]Contents ] [
+ [163]Next ] [ [164]Previous ]
+
+ When invoked as "kermit" or any other name besides any of the special
+ ones, C-Kermit has the command-line options described above in the
+ [165]OPTIONS section. However, if you invoke C-Kermit using any of the
+ following names:
+
+ telnet Telnet client
+ ftp FTP client
+ http HTTP client
+ https Secure HTTP client
+
+ Kermit's command-line personality changes to match. This can be done
+ (among other ways) with symbolic links (symlinks). For example, if you
+ want C-Kermit to be your regular Telnet client, or the Telnet helper
+ of your Web browser, you can create a link like the following in a
+ directory that lies in your PATH ahead of the regular telnet program:
+
+ ln -s /usr/local/bin/kermit telnet
+
+ Now when you give a "telnet" command, you are invoking Kermit instead,
+ but with its Telnet command-line personality so, for example:
+
+ telnet xyzcorp.com
+
+ Makes a Telnet connection to xyzcorp.com, and Kermit exits
+ automatically when the connection is closed (just like the regular
+ Telnet client). Type "telnet -h" to get a list of Kermit's
+ Telnet-personality command-line options, which are intended to be as
+ compatible as possible with the regular Telnet client.
+
+ Similarly for FTP:
+
+ ln -s /usr/local/bin/kermit ftp
+
+ And now type "ftp -h" to see its command-line options, and use command
+ lines just like you would give your regular FTP client:
+
+ ftp -n xyzcorp.com
+
+ but with additional options allowing an entire session to be specified
+ on the command line, as explained in the C-Kermit [166]FTP client
+ documentation.
+
+ And similarly for HTTP:
+
+ ln -s /usr/local/bin/kermit http
+ ./http -h
+ ./http www.columbia.edu -g kermit/index.html
+
+ Finally, if Kermit's first command-line option is a Telnet, FTP, IKSD,
+ or HTTP URL, Kermit automatically makes the appropriate kind of
+ connection and, if indicated by the URL, takes the desired action:
+
+ kermit telnet:xyzcorp.com ; Opens a Telnet session
+ kermit telnet://olga@xyzcorp.com ; Ditto for user olga
+ kermit ftp://olga@xyzcorp.com/public/oofa.zip ; Downloads a file
+ kermit kermit://kermit.columbia.edu/kermit/f/READ.ME ; Ditto for IKSD
+ kermit iksd://kermit.columbia.edu/kermit/f/READ.ME ; (This works too)
+ kermit http://www.columbia.edu/kermit/index.html ; Grabs a web page
+ kermit https://wwws.xyzcorp.com/secret/plan.html ; Grabs a secure web pag
+e
+
+ [ [167]Kermit Home ] [ [168]C-Kermit Home ] [ [169]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ LICENSE [ [170]Top ] [ [171]Contents ] [ [172]Next ] [ [173]Previous ]
+
+ C-Kermit has an unusual license, but a fair and sensible one given
+ that the Kermit Project must support itself out of revenue: it's not a
+ BSD license, not GPL, not Artistic, not commercial, not shareware, not
+ freeware. It can be summed up like this: if you want C-Kermit for your
+ own use, you can download and use it without cost or license (but we'd
+ appreciate it if you would purchase the manual). But if you want to
+ sell C-Kermit or bundle it with a product or otherwise distribute it
+ in a commercial setting EXCEPT WITH AN OPEN-SOURCE OPERATING SYSTEM
+ DISTRIBUTION such as Linux, FreeBSD, NetBSD, or OpenBSD, you must
+ license it. To see the complete license, give the LICENSE command at
+ the prompt, or see the COPYING.TXT file distributed with C-Kermit 7.0
+ or later, or download it from
+ [174]ftp://kermit.columbia.edu/kermit/c-kermit/COPYING.TXT. Send
+ licensing inquiries to [175]kermit@columbia.edu.
+
+ [ [176]Kermit Home ] [ [177]C-Kermit Home ] [ [178]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ OTHER TOPICS [ [179]Top ] [ [180]Contents ] [ [181]Next ] [ [182]Previous ]
+
+ There's way more to C-Kermit than we've touched on here --
+ troubleshooting, customization, character sets, dialing directories,
+ sending pages, script writing, and on and on, all of which are covered
+ in the manual and updates and supplements. For the most up-to-date
+ information on documentation (or updated documentation itself) visit
+ the Kermit Project website:
+
+ [183]http://www.columbia.edu/kermit/
+
+ There you will also find [184]Kermit software packages for other
+ platforms: different Unix varieties, Windows, DOS, VMS, IBM
+ mainframes, and many others: 20+ years' worth.
+
+ [ [185]Kermit Home ] [ [186]C-Kermit Home ] [ [187]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ DOCUMENTATION AND UPDATES [ [188]Top ] [ [189]Contents ] [ [190]Next ] [
+ [191]Previous ]
+
+ The manual for C-Kermit is:
+
+ 1. Frank da Cruz and Christine M. Gianone, [192]Using C-Kermit,
+ Second Edition, Digital Press / Butterworth-Heinemann, Woburn, MA,
+ 1997, 622 pages, ISBN 1-55558-164-1. This is a printed book. It
+ covers C-Kermit 6.0.
+ 2. The C-Kermit 7.0 Supplement:
+ [193]http://www.columbia.edu/kermit/ckermit70.html
+ 3. The C-Kermit 8.0 Supplement:
+ [194]http://www.columbia.edu/kermit/ckermit80.html
+
+ The C-Kermit home page is here:
+
+ [195]http://www.columbia.edu/kermit/ckermit.html
+
+ Visit this page to learn about new versions, Beta tests, and other
+ news; to read case studies and tutorials; to download source code,
+ install packages, and [196]prebuilt binaries for many platforms. Also
+ visit:
+
+ [197]http://www.columbia.edu/kermit/scriptlib.html
+ The Kermit script library and tutorial
+
+ [198]http://www.columbia.edu/kermit/newfaq.html
+ The Kermit FAQ (Frequently Asked Questions about Kermit)
+
+ [199]http://www.columbia.edu/kermit/ckfaq.html
+ The C-Kermit FAQ (Frequently Asked Questions about C-Kermit)
+
+ [200]http://www.columbia.edu/kermit/security.html
+ The Kermit security reference.
+
+ [201]http://www.columbia.edu/kermit/telnet.html
+ C-Kermit Telnet client documentation.
+
+ [202]http://www.columbia.edu/kermit/studies.html
+ Case studies.
+
+ [203]http://www.columbia.edu/kermit/ckcbwr.html
+ General C-Kermit Hints and Tips.
+
+ [204]http://www.columbia.edu/kermit/ckubwr.html
+ Unix C-Kermit Hints and Tips.
+
+ [205]http://www.columbia.edu/kermit/ckvbwr.html
+ VMS C-Kermit Hints and Tips.
+
+ [206]http://www.columbia.edu/kermit/ckuins.html
+ Unix C-Kermit Installation Instructions
+
+ [207]http://www.columbia.edu/kermit/ckvins.html
+ VMS C-Kermit Installation Instructions
+
+ [208]http://www.columbia.edu/kermit/support.html
+ Technical support.
+
+ [209]http://www.columbia.edu/kermit/k95tutorial.html
+ Kermit 95 tutorial (this document).
+
+ [210]comp.protocols.kermit.misc
+ The Kermit newsgroup (unmoderated).
+
+ [ [211]Kermit Home ] [ [212]C-Kermit Home ] [ [213]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ FILES [ [214]Top ] [ [215]Contents ] [ [216]Next ] [ [217]Previous ]
+
+ [218]COPYING.TXT
+ C-Kermit license.
+
+ [219]~/.kermrc
+ Initialization file.
+
+ [220]~/.mykermrc
+ Customization file.
+
+ ~/.kdd
+ Kermit dialing directory (see manual).
+
+ ~/.knd
+ Kermit network directory (see manual).
+
+ ~/.ksd
+ Kermit services directory (see manual).
+
+ [221]ckuins.html
+ Installation instructions for Unix.
+
+ [222]ckcbwr.html
+ General C-Kermit bugs, hints, tips.
+
+ [223]ckubwr.html
+ Unix-specific C-Kermit bugs, hints, tips.
+
+ [224]ckcplm.html
+ C-Kermit program logic manual.
+
+ [225]ckccfg.html
+ C-Kermit compile-time configuration options.
+
+ ssh
+ (in your PATH) SSH connection helper.
+
+ rz, sz, etc.
+ (in your PATH) external protocols for XYZmodem.
+
+ /var/spool/locks (or whatever)
+ UUCP lockfile for dialing out (see [226]installation
+ instructions).
+
+ [ [227]Kermit Home ] [ [228]C-Kermit Home ] [ [229]C-Kermit FAQ ]
+ ________________________________________________________________________
+
+ AUTHORS [ [230]Top ] [ [231]Contents ] [ [232]Previous ]
+
+ Frank da Cruz and Jeffrey E Altman
+ The Kermit Project - Columbia Univerity
+ 612 West 115th Street
+ New York NY 10025-7799
+ USA
+
+ 1985-present, with contributions from hundreds of others all over the
+ world.
+ _________________________________________________________________
+
+
+ C-Kermit 8.0 Unix Manual Page and Tutorial /
+ [233]kermit@columbia.edu / 24 October 2002
+
+References
+
+ 1. http://www.columbia.edu/kermit/
+ 2. http://www.columbia.edu/
+ 3. http://www.columbia.edu/kermit/ckututor.pdf
+ 4. ftp://kermit.columbia.edu/kermit/test/text/ckuker.nr
+ 5. http://www.columbia.edu/kermit/ckututor.html#description
+ 6. http://www.columbia.edu/kermit/ckututor.html#synopsis
+ 7. http://www.columbia.edu/kermit/ckututor.html#options
+ 8. http://www.columbia.edu/kermit/ckututor.html#commands
+ 9. http://www.columbia.edu/kermit/ckututor.html#initfile
+ 10. http://www.columbia.edu/kermit/ckututor.html#modes
+ 11. http://www.columbia.edu/kermit/ckututor.html#connections
+ 12. http://www.columbia.edu/kermit/ckututor.html#transfer
+ 13. http://www.columbia.edu/kermit/ckututor.html#server
+ 14. http://www.columbia.edu/kermit/ckututor.html#ftp
+ 15. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 16. http://www.columbia.edu/kermit/ckututor.html#security
+ 17. http://www.columbia.edu/kermit/ckututor.html#personae
+ 18. http://www.columbia.edu/kermit/ckututor.html#license
+ 19. http://www.columbia.edu/kermit/ckututor.html#other
+ 20. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 21. http://www.columbia.edu/kermit/ckututor.html#files
+ 22. http://www.columbia.edu/kermit/ckututor.html#authors
+ 23. http://www.columbia.edu/kermit/ckututor.html#top
+ 24. http://www.columbia.edu/kermit/ckututor.html#contents
+ 25. http://www.columbia.edu/kermit/ckututor.html#synopsis
+ 26. http://www.columbia.edu/kermit/ckermit.html
+ 27. http://www.columbia.edu/kermit/
+ 28. http://www.columbia.edu/
+ 29. ftp://ftp.isi.edu/in-notes/rfc2839.txt
+ 30. ftp://ftp.isi.edu/in-notes/rfc2840.txt
+ 31. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 32. http://www.columbia.edu/kermit/
+ 33. http://www.columbia.edu/kermit/
+ 34. http://www.columbia.edu/kermit/ckermit.html
+ 35. http://www.columbia.edu/kermit/ckfaq.html
+ 36. http://www.columbia.edu/kermit/ckututor.html#top
+ 37. http://www.columbia.edu/kermit/ckututor.html#contents
+ 38. http://www.columbia.edu/kermit/ckututor.html#options
+ 39. http://www.columbia.edu/kermit/ckututor.html#synopsis
+ 40. http://www.columbia.edu/kermit/ckututor.html#kerbang
+ 41. http://www.columbia.edu/kermit/ckututor.html#personae
+ 42. http://www.columbia.edu/kermit/ckututor.html#kerbang
+ 43. http://www.columbia.edu/kermit/ckututor.html#initfile
+ 44. http://www.columbia.edu/kermit/ckututor.html#initfile
+ 45. http://www.columbia.edu/kermit/ckututor.html#personae
+ 46. http://www.columbia.edu/kermit/ckututor.html#options
+ 47. http://www.columbia.edu/kermit/ckututor.html#commands
+ 48. http://www.columbia.edu/kermit/
+ 49. http://www.columbia.edu/kermit/ckermit.html
+ 50. http://www.columbia.edu/kermit/ckfaq.html
+ 51. http://www.columbia.edu/kermit/ckututor.html#top
+ 52. http://www.columbia.edu/kermit/ckututor.html#contents
+ 53. http://www.columbia.edu/kermit/ckututor.html#commands
+ 54. http://www.columbia.edu/kermit/ckututor.html#description
+ 55. http://www.columbia.edu/kermit/ckututor.html#commands
+ 56. http://www.columbia.edu/kermit/ckututor.html#personae
+ 57. http://www.columbia.edu/kermit/ckututor.html#personae
+ 58. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 59. http://www.columbia.edu/kermit/ckututor.html#transfer
+ 60. http://www.columbia.edu/kermit/ckututor.html#top
+ 61. http://www.columbia.edu/kermit/ckututor.html#contents
+ 62. http://www.columbia.edu/kermit/ckututor.html#initfile
+ 63. http://www.columbia.edu/kermit/ckututor.html#options
+ 64. http://www.columbia.edu/kermit/ckututor.html#kerbang
+ 65. http://www.columbia.edu/kermit/ckututor.html#cmdlist
+ 66. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 67. http://www.columbia.edu/kermit/ckututor.html#initfile
+ 68. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 69. http://www.columbia.edu/kermit/ckscripts.html
+ 70. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 71. http://www.columbia.edu/kermit/
+ 72. http://www.columbia.edu/kermit/ckermit.html
+ 73. http://www.columbia.edu/kermit/ckfaq.html
+ 74. http://www.columbia.edu/kermit/ckututor.html#top
+ 75. http://www.columbia.edu/kermit/ckututor.html#contents
+ 76. http://www.columbia.edu/kermit/ckututor.html#modes
+ 77. http://www.columbia.edu/kermit/ckututor.html#commands
+ 78. http://www.columbia.edu/kermit/
+ 79. http://www.columbia.edu/kermit/ckermit.html
+ 80. http://www.columbia.edu/kermit/ckfaq.html
+ 81. http://www.columbia.edu/kermit/ckututor.html#top
+ 82. http://www.columbia.edu/kermit/ckututor.html#contents
+ 83. http://www.columbia.edu/kermit/ckututor.html#connections
+ 84. http://www.columbia.edu/kermit/ckututor.html#initfile
+ 85. http://www.columbia.edu/kermit/ckfaq.html#term
+ 86. http://www.columbia.edu/kermit/
+ 87. http://www.columbia.edu/kermit/ckermit.html
+ 88. http://www.columbia.edu/kermit/ckfaq.html
+ 89. http://www.columbia.edu/kermit/ckututor.html#top
+ 90. http://www.columbia.edu/kermit/ckututor.html#contents
+ 91. http://www.columbia.edu/kermit/ckututor.html#transfer
+ 92. http://www.columbia.edu/kermit/ckututor.html#modes
+ 93. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 94. ftp://ftp.isi.edu/in-notes/rfc2217.txt
+ 95. http://www.columbia.edu/kermit/ckututor.html#ftp
+ 96. http://www.columbia.edu/kermit/
+ 97. http://www.columbia.edu/kermit/ckermit.html
+ 98. http://www.columbia.edu/kermit/ckfaq.html
+ 99. http://www.columbia.edu/kermit/ckututor.html#top
+ 100. http://www.columbia.edu/kermit/ckututor.html#contents
+ 101. http://www.columbia.edu/kermit/ckututor.html#server
+ 102. http://www.columbia.edu/kermit/ckututor.html#connections
+ 103. http://www.columbia.edu/kermit/ckututor.html#download
+ 104. http://www.columbia.edu/kermit/ckututor.html#upload
+ 105. http://www.columbia.edu/kermit/ckututor.html#oldfashioned
+ 106. http://www.columbia.edu/kermit/ckututor.html#trouble
+ 107. http://www.columbia.edu/kermit/ckututor.html#advanced
+ 108. http://www.columbia.edu/kermit/ckututor.html#nonkermit
+ 109. http://www.columbia.edu/kermit/kermit.html#notslow
+ 110. http://www.columbia.edu/kermit/ckermit.html
+ 111. http://www.columbia.edu/kermit/k95.html
+ 112. http://www.columbia.edu/kermit/k95.html
+ 113. http://www.columbia.edu/kermit/ckermit.html
+ 114. http://www.columbia.edu/kermit/mskermit.html
+ 115. http://www.columbia.edu/kermit/
+ 116. http://www.columbia.edu/kermit/support.html
+ 117. http://www.columbia.edu/kermit/ckmanual.html
+ 118. mailto:kermit-support@columbia.edu
+ 119. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 120. http://www.columbia.edu/kermit/ckututor.html#ftp
+ 121. http://www.columbia.edu/kermit/
+ 122. http://www.columbia.edu/kermit/ckermit.html
+ 123. http://www.columbia.edu/kermit/ckfaq.html
+ 124. http://www.columbia.edu/kermit/ckututor.html#top
+ 125. http://www.columbia.edu/kermit/ckututor.html#contents
+ 126. http://www.columbia.edu/kermit/ckututor.html#ftp
+ 127. http://www.columbia.edu/kermit/ckututor.html#transfer
+ 128. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 129. http://www.columbia.edu/kermit/
+ 130. http://www.columbia.edu/kermit/ckermit.html
+ 131. http://www.columbia.edu/kermit/ckfaq.html
+ 132. http://www.columbia.edu/kermit/ckututor.html#top
+ 133. http://www.columbia.edu/kermit/ckututor.html#contents
+ 134. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 135. http://www.columbia.edu/kermit/ckututor.html#transfer
+ 136. http://www.columbia.edu/kermit/ckututor.html#server
+ 137. http://www.columbia.edu/kermit/ftpclient.html
+ 138. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 139. http://www.columbia.edu/kermit/
+ 140. http://www.columbia.edu/kermit/ckermit.html
+ 141. http://www.columbia.edu/kermit/ckfaq.html
+ 142. http://www.columbia.edu/kermit/ckermit3.html#x3
+ 143. http://www.columbia.edu/kermit/ckermit3.html#x2.2
+ 144. http://www.columbia.edu/kermit/ckututor.html#top
+ 145. http://www.columbia.edu/kermit/ckututor.html#contents
+ 146. http://www.columbia.edu/kermit/ckututor.html#security
+ 147. http://www.columbia.edu/kermit/ckututor.html#ftp
+ 148. http://www.columbia.edu/kermit/cuiksd.html
+ 149. http://www.columbia.edu/kermit/iksd.html
+ 150. http://www.columbia.edu/kermit/
+ 151. http://www.columbia.edu/kermit/ckermit.html
+ 152. http://www.columbia.edu/kermit/ckfaq.html
+ 153. http://www.columbia.edu/kermit/ckututor.html#top
+ 154. http://www.columbia.edu/kermit/ckututor.html#contents
+ 155. http://www.columbia.edu/kermit/ckututor.html#personae
+ 156. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 157. http://www.columbia.edu/kermit/security.html
+ 158. http://www.columbia.edu/kermit/
+ 159. http://www.columbia.edu/kermit/ckermit.html
+ 160. http://www.columbia.edu/kermit/ckfaq.html
+ 161. http://www.columbia.edu/kermit/ckututor.html#top
+ 162. http://www.columbia.edu/kermit/ckututor.html#contents
+ 163. http://www.columbia.edu/kermit/ckututor.html#license
+ 164. http://www.columbia.edu/kermit/ckututor.html#iksd
+ 165. http://www.columbia.edu/kermit/ckututor.html#options
+ 166. http://www.columbia.edu/kermit/ckermit3.html#x3.1.2
+ 167. http://www.columbia.edu/kermit/
+ 168. http://www.columbia.edu/kermit/ckermit.html
+ 169. http://www.columbia.edu/kermit/ckfaq.html
+ 170. http://www.columbia.edu/kermit/ckututor.html#top
+ 171. http://www.columbia.edu/kermit/ckututor.html#contents
+ 172. http://www.columbia.edu/kermit/ckututor.html#other
+ 173. http://www.columbia.edu/kermit/ckututor.html#personae
+ 174. ftp://kermit.columbia.edu/kermit/c-kermit/COPYING.TXT
+ 175. mailto:kermit@columbia.edu
+ 176. http://www.columbia.edu/kermit/
+ 177. http://www.columbia.edu/kermit/ckermit.html
+ 178. http://www.columbia.edu/kermit/ckfaq.html
+ 179. http://www.columbia.edu/kermit/ckututor.html#top
+ 180. http://www.columbia.edu/kermit/ckututor.html#contents
+ 181. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 182. http://www.columbia.edu/kermit/ckututor.html#license
+ 183. http://www.columbia.edu/kermit/
+ 184. http://www.columbia.edu/kermit/howtoget.html
+ 185. http://www.columbia.edu/kermit/
+ 186. http://www.columbia.edu/kermit/ckermit.html
+ 187. http://www.columbia.edu/kermit/ckfaq.html
+ 188. http://www.columbia.edu/kermit/ckututor.html#top
+ 189. http://www.columbia.edu/kermit/ckututor.html#contents
+ 190. http://www.columbia.edu/kermit/ckututor.html#files
+ 191. http://www.columbia.edu/kermit/ckututor.html#other
+ 192. http://www.columbia.edu/kermit/ckmanual.html
+ 193. http://www.columbia.edu/kermit/ckermit70.html
+ 194. http://www.columbia.edu/kermit/ckermit80.html
+ 195. http://www.columbia.edu/kermit/ckermit.html
+ 196. http://www.columbia.edu/kermit/ck80binaries.html
+ 197. http://www.columbia.edu/kermit/scriptlib.html
+ 198. http://www.columbia.edu/kermit/newfaq.html
+ 199. http://www.columbia.edu/kermit/ckfaq.html
+ 200. http://www.columbia.edu/kermit/security.html
+ 201. http://www.columbia.edu/kermit/telnet.html
+ 202. http://www.columbia.edu/kermit/studies.html
+ 203. http://www.columbia.edu/kermit/ckcbwr.html
+ 204. http://www.columbia.edu/kermit/ckubwr.html
+ 205. http://www.columbia.edu/kermit/ckvbwr.html
+ 206. http://www.columbia.edu/kermit/ckuins.html
+ 207. http://www.columbia.edu/kermit/ckvins.html
+ 208. http://www.columbia.edu/kermit/support.html
+ 209. http://www.columbia.edu/kermit/k95tutorial.html
+ 210. news:comp.protocols.kermit.misc
+ 211. http://www.columbia.edu/kermit/
+ 212. http://www.columbia.edu/kermit/ckermit.html
+ 213. http://www.columbia.edu/kermit/ckfaq.html
+ 214. http://www.columbia.edu/kermit/ckututor.html#top
+ 215. http://www.columbia.edu/kermit/ckututor.html#contents
+ 216. http://www.columbia.edu/kermit/ckututor.html#authors
+ 217. http://www.columbia.edu/kermit/ckututor.html#documentation
+ 218. ftp://kermit.columbia.edu/kermit/c-kermit/COPYING.TXT
+ 219. ftp://kermit.columbia.edu/kermit/c-kermit/ckermit.ini
+ 220. ftp://kermit.columbia.edu/kermit/c-kermit/ckermod.ini
+ 221. http://www.columbia.edu/kermit/ckuins.html
+ 222. http://www.columbia.edu/kermit/ckcbwr.html
+ 223. http://www.columbia.edu/kermit/ckubwr.html
+ 224. http://www.columbia.edu/kermit/ckcplm.html
+ 225. http://www.columbia.edu/kermit/ckccfg.html
+ 226. http://www.columbia.edu/kermit/ckuins.html
+ 227. http://www.columbia.edu/kermit/
+ 228. http://www.columbia.edu/kermit/ckermit.html
+ 229. http://www.columbia.edu/kermit/ckfaq.html
+ 230. http://www.columbia.edu/kermit/ckututor.html#top
+ 231. http://www.columbia.edu/kermit/ckututor.html#contents
+ 232. http://www.columbia.edu/kermit/ckututor.html#files
+ 233. mailto:kermit@columbia.edu