Imported Upstream version 302
[ckermit.git] / ckututor.txt
1
2    [1]The Columbia Crown The Kermit Project | Columbia University
3    612 West 115th Street, New York NY 10025 USA o [2]kermit@columbia.edu
4    ...since 1981
5    [3]Home [4]Kermit 95 [5]C-Kermit [6]Scripts [7]Current [8]New [9]FAQ
6    [10]Support
7
8    C-KERMIT 9.0 UNIX MANUAL PAGE AND TUTORIAL
9
10      Frank da Cruz
11      [11]The Kermit Project, [12]Columbia University
12
13    [ [13]PDF version ] [ [14]Nroff version ]
14
15      This document is intended to give the beginner sufficient
16      information to make basic (if not advanced) use of C-Kermit 9.0.
17      Although it might be rather long for a Unix manual page (about 1600
18      lines), it's still far shorter than the [15]C-Kermit manual, which
19      should be consulted for advanced topics such as customization,
20      character-sets, scripting, etc. We also attempt to provide a clear
21      structural overview of C-Kermit's many capabilities, functional
22      areas, states, and modes and their interrelation, that should be
23      helpful to beginners and veterans alike, as well as to those
24      upgrading to the new release. Thanks to Christine Gianone for her
25      work on this document before she was laid off in 2005.
26
27    Most recent update: Fri Jul 1 14:12:31 2011
28
29 CONTENTS
30
31      * [16]DESCRIPTION
32      * [17]SYNOPSIS
33      * [18]OPTIONS
34      * [19]COMMAND LANGUAGE
35      * [20]INITIALIZATION FILE
36      * [21]MODES OF OPERATION
37      * [22]MAKING CONNECTIONS
38      * [23]TRANSFERRING FILES WITH KERMIT
39      * [24]KERMIT CLIENT/SERVER CONNECTIONS
40
41      * [25]KERMIT'S BUILT-IN FTP AND HTTP CLIENTS
42      * [26]INTERNET KERMIT SERVICE
43      * [27]SECURITY
44      * [28]ALTERNATIVE COMMAND-LINE PERSONALITIES
45      * [29]LICENSE
46      * [30]OTHER TOPICS
47      * [31]DOCUMENTATION AND UPDATES
48      * [32]FILES
49      * [33]AUTHORS
50
51 DESCRIPTION
52
53    [34]Top   [35]Contents   [36]Next
54
55    [37]C-Kermit is an all-purpose communications software package from the
56    [38]Kermit Project at [39]Columbia University that:
57
58      * Is portable to many platforms, Unix and non-Unix alike.
59      * Can make both serial and network connections.
60      * Can conduct interactive terminal sessions over its connection.
61      * Can transfer text or binary files over the same connection.
62      * Can convert text-file character sets in terminal mode or file
63        transfer.
64      * Is customizable in every aspect of its operation.
65
66    C-Kermit is a modem program, a Telnet client, an Rlogin client, an FTP
67    client, an HTTP client, and on selected platforms, also an X.25 client.
68    It can make its own secure Internet connections using IETF-approved
69    security methods including Kerberos IV, Kerberos V, SSL/TLS, and SRP
70    and it can also make SSH (Secure Shell) connections through your
71    external SSH client application. It can be the far-end file-transfer or
72    client/server partner of your desktop Kermit client. It can also accept
73    incoming dialed and network connections. It can even be installed as an
74    Internet service on its own standard TCP socket, 1649 [[40]RFC2839,
75    [41]RFC2840].
76
77    And perhaps most important, everything you can do "by hand"
78    (interactively) with C-Kermit, can be "scripted" (automated) using its
79    built-in cross-platform transport-independent script programming
80    language, which happens to be identical to its interactive command
81    language.
82
83    This manual page offers an overview of C-Kermit 9.0 for Unix ("Unix" is
84    an operating system family that includes AIX, DG/UX, FreeBSD, HP-UX,
85    IRIX, Linux, Mac OS X, NetBSD, OpenBSD, Open Server, Open Unix, QNX,
86    Solaris, SunOS, System V R3, System V R4, Tru64 Unix, Unixware, Xenix,
87    and many others). For thorough coverage, please consult the published
88    C-Kermit manual and supplements (see [42]DOCUMENTATION below). For
89    further information about C-Kermit, Kermit software for other
90    platforms, and Kermit manuals, visit the Kermit Project website:
91
92   [43]http://www.columbia.edu/kermit/
93
94    This is a longer-than-average manual page, and yet it barely scratches
95    the surface. Don't be daunted. C-Kermit is a large and complex package,
96    evolving over decades of practice and experience, but that doesn't mean
97    it's hard to learn or use. Its most commonly used functions are
98    explained here with pointers to additional information elsewhere.
99
100    [44]Kermit Home [45]C-Kermit Home [46]C-Kermit FAQ
101
102 SYNOPSIS
103
104    [47]Top [48]Contents [49]Next [50]Previous
105
106    Usage:  kermit [filename] [-x arg [-x arg]...[-yyy]..] [ {=,--,+} text
107    ] ]
108    Or:    kermit URL
109
110      * -x is an option requiring an argument;
111      * -y is an option with no argument.
112
113    If the first command-line argument is the name of a file,
114    interactive-mode commands are executed from the file. The '=' (or "--")
115    argument tells Kermit not to parse the remainder of the command line,
116    but to make the words following '=' available as \%1, \%2, ... \%9. The
117    "+" argument is like "=" but for use in "kerbang scripts" (explained
118    [51]below). A second command-line format allows the one and only
119    argument to be a [52]Telnet, FTP, HTTP, or IKSD URL.
120
121    Order of execution:
122
123     1. [53]The command file (if any).
124     2. [54]The initialization file, if any, unless suppressed with -Y.
125     3. [55]The customization file (if it is executed by the initialization
126        file).
127     4. [56]The command-line URL (if any, and if so, execution stops here).
128     5. [57]Command-line options (if any).
129     6. [58]Interactive commands.
130
131    Some command-line options can cause actions (such as -s to send a
132    file); others just set parameters. If any action options are included
133    on the command line, Kermit exits when finished unless also given the
134    -S ("stay") option. If no action options are given, no initialization
135    or command files contained an EXIT or QUIT command, and no fatal errors
136    occurred, Kermit issues its prompt and waits for you to type commands.
137
138      Bear in mind that C-Kermit can be built with selected features
139      disabled, and also that certain features are not available on all
140      platforms. For example, C-Kermit can't be built with TCP/IP support
141      on a platform that does not have TCP/IP header files and libraries
142      (and even if Kermit does include TCP/IP support, it can't be used to
143      make TCP/IP connections on a computer that does not have a TCP/IP
144      stack installed). If your version of C-Kermit lacks a feature
145      mentioned here, use its SHOW FEATURES command to see what might have
146      been excluded.
147
148    C-Kermit has three kinds of commands: regular single-letter
149    command-line options, extended-format command-line options, and
150    interactive commands.
151
152    [59]Kermit Home [60]C-Kermit Home [61]C-Kermit FAQ
153
154 OPTIONS
155
156    [62]Top [63]Contents [64]Next [65]Previous  <- (Most people should
157    click Next to skip around this section...)
158
159    Like most Unix commands, C-Kermit can be be given options on the
160    command line. But C-Kermit also can be used interactively by giving it
161    [66]commands composed of words, which are more intuitive than cryptic
162    command-line options, and more flexible too. In other words, you don't
163    have to use C-Kermit's command-line options, but they are available if
164    you want to. (By the same token, you don't have to use its interactive
165    commands either -- you can use either or both in any combination.)
166
167    C-Kermit is generally installed in the PATH as "kermit", and therefore
168    is invoked by typing the word "kermit" (lowercase) at the shell prompt,
169    and then pressing the Return or Enter key. If you wish to include
170    command-line options, put them after the word "kermit" but before
171    pressing Return or Enter, separated by spaces, for example:
172
173   $ kermit -s ckermit.tar.gz
174
175    ('$' is the shell prompt; "kermit -s ckermit.tar.gz" is what you type,
176    followed by Return or Enter.)
177
178    Here is a list of C-Kermit's single-letter command-line options, which
179    start with a single dash (-), in ASCII ("alphabetical") order.
180    Alphabetic case is significant (-A is not the same as -a). The Action?
181    column contains Y for action options and N for non-action options.
182
183    Option Action? Description
184    -0 N (digit zero) 100% transparent Connect state for "in-the-middle"
185    operation: 8 bits, no parity, no escape character, everything passes
186    through.
187    -8 N (digit eight) Connection is 8-bit clean (this is the default in
188    C-Kermit 9.0). Equivalent to the EIGHTBIT command, which in turn is a
189    shortcut for SET TERMINAL BYTESIZE 8, SET COMMAND BYTESIZE 8, SET
190    PARITY NONE.
191    -9 arg N (digit nine) Make a connection to an FTP server. Equivalent to
192    the FTP OPEN command.
193    Argument: IP-address-or-hostname[:optional-TCP-port].
194    NOTE: C-Kermit also has a separate FTP command-line personality, with
195    regular FTP-like command-line syntax. [67]More about this below.
196    -A N Kermit is to be started as an Internet service (IKSD) (only from
197    inetd.conf).
198    -B N Kermit is running in Batch or Background (no controlling
199    terminal). To be used in case Kermit doesn't automatically sense its
200    background status. Equivalent to the SET BACKGROUND ON command.
201    -C arg N Interactive-mode Commands to be executed.
202    Argument: Commands separated by commas, list in doublequotes.
203    -D arg N Delay before starting to send in Remote mode. Equivalent to
204    the SET DELAY command.
205    Argument: Number of seconds.
206    -E N Exit automatically when connection closes. Equivalent to SET EXIT
207    ON-DISCONNECT ON.
208    -F arg N Use an open TCP connection.
209    Argument: Numeric file descriptor of open TCP connection.
210    Also see: -j, -J.
211    -G arg Y Get file(s) from server, send contents to standard output,
212    which normally would be piped to another process.
213    Argument: Remote file specification, in quotes if it contains
214    metacharacters.
215    Also see: -g, -k.
216    -H N Suppress program startup Herald and greeting.
217    -I N Tell Kermit it has a reliable connection, to force streaming to be
218    used where it normally would not be. Equivalent to the SET RELIABLE ON
219    command.
220    -J arg N "Be like Telnet." Like -j but implies -E.
221    Argument: IP hostname/address optionally followed by service.
222    NOTE: C-Kermit also has a separate Telnet command-line personality,
223    with regular Telnet-like command-line syntax. [68]More about this
224    below.
225    -L N Recursive directory descent for files in -s option.
226    -M arg N My user name (for use with Telnet, Rlogin, FTP, etc).
227    Equivalent to the SET LOGIN USER command.
228    Argument: Username string.
229    -O Y (Uppercase letter O) Be a server for One command only. Also see:
230    -x.
231    -P N Don't convert file (Path) names of transferred files. Equivalent
232    to SET FILE NAMES LITERAL.
233    -Q N Quick Kermit protocol settings. Equivalent to the FAST command.
234    This is the default in C-Kermit 7.0 and later.
235    -R N Remote-only (this just makes IF REMOTE true).
236    -S N Stay (enter command parser after action options).
237    -T N Force Text mode for file transfer; implies -V. Equivalent to SET
238    TRANSFER MODE MANUAL, SET FILE TYPE TEXT.
239    -V N Disable automatic per-file text/binary switching. Equivalent to
240    SET TRANSFER MODE MANUAL.
241    -Y N Skip (don't execute) the initialization file.
242    -a arg N As-name for file(s) in -s, -r, or -g.
243    Argument: As-name string (alternative filename). When receiving files,
244    this can be a directory name.
245    -b arg N Speed for serial device. Equivalent to SET SPEED.
246    Argument: Numeric Bits per second for serial connections.
247    -c Y Enter Connect state before transferring files.
248    -d N Create a debug.log file with detailed debugging information (a
249    second -d adds timestamps). Equivalent to LOG DEBUG but takes effect
250    sooner.
251    -e arg N Maximum length for incoming Kermit file-transfer packets.
252    Equivalent to SET RECEIVE PACKET-LENGTH.
253    Argument: Length in bytes.
254    -f Y Send a FINISH command to a Kermit server.
255    -g arg N Get file(s) from a Kermit server.
256    Argument: File specification on other computer, in quotes if it
257    contains metacharacters. Equivalent to GET.
258    Also see: -a, -G, -r.
259    -h Y Print Help text for single-letter command-line options (pipe thru
260    'more' to prevent scrolling).
261    -i N Force binary (Image) mode for file transfer; implies -V.
262    Equivalent to SET TRANSFER MODE MANUAL, SET FILE TYPE BINARY.
263    -j arg N Make a TCP/IP connection.
264    Argument: IP host name/address and optional service name or number.
265    Equivalent to the TELNET command.
266    Also see: -J, -F.
267    -k Y Receive file(s) to standard output, which normally would be piped
268    to another process.
269    Also see: -r, -G.
270    -l arg N (Lowercase letter L) Make a connection on the given serial
271    communications device. Equivalent to the SET LINE (SET PORT) command.
272    Argument: Serial device name, e.g. /dev/ttyS0.
273    -m arg N Modem type for use with the -l device. Equivalent to the SET
274    MODEM TYPE command.
275    Argument: Modem name as in SET MODEM TYPE command, e.g. "usrobotics".
276    -n Y Enter Connect state after transferring files (historical).
277    -p arg N Parity. Equivalent to the SET PARITY command.
278    Argument: One of the following: e(ven), o(dd), m(ark), n(one), s(pace).
279    -q N Quiet (suppress most messages). Equivalent to SET QUIET ON.
280    -r Y Receive file(s). Equivalent to the RECEIVE command.
281    Argument: (none, but see -a)
282    -s arg N Send file(s).
283    Argument: One or more local file specifications. Equivalent to the SEND
284    command.
285    Also see: -a.
286    -t N (Historical) Xon (Ctrl-Q) Turnaround character for half-duplex
287    connections (used on serial linemode connections to old mainframes).
288    Equivalent to SET DUPLEX HALF, SET HANDSHAKE XON.
289    -v arg N Window size for Kermit protocol (ignored when streaming).
290    Equivalent to SET WINDOW-SIZE.
291    Argument: Number, 1 to 32.
292    -w N Incoming files Write over existing files. Equivalent to SET FILE
293    COLLISION OVERWRITE.
294    -x Y Enter server mode. Equivalent to the SERVER command. Also see: -O.
295    -y arg N Alternative initialization file.
296    Argument: Filename.
297    -z N Force foreground behavior. To be used in case Kermit doesn't
298    automatically sense its foreground status. Equivalent to the SET
299    BACKGROUND OFF command.
300
301    Extended command-line options (necessary because single-letter ones are
302    about used up) start with two dashes (--), with words rather than
303    single letters as option names. If an extended option takes an
304    argument, it is separated from the option word by a colon (:). Extended
305    options include:
306
307    Option Description
308    --bannerfile:filename File to display upon startup or IKSD login.
309    --cdfile:filename File to be sent for display to the client when server
310    changes directory (filename is relative to the changed-to directory).
311    --cdmessage:{on,off} Enable/disable the server CD message feature.
312    --help Prints usage message for extended options.
313    --helpfile:filename Designates a file containing custom text to replace
314    the top-level HELP command.
315    --nointerrupts Disables keyboard interrupts.
316    --noperms Disables the Kermit protocol file Permissions attribute, to
317    prevent transmission of file permissions (protection) from sender to
318    receiver.
319
320    Plus several other [69]IKSD-Only options.
321
322    See the [70]file-transfer section for examples of command-line
323    invocation.
324
325 COMMAND LANGUAGE
326
327    [71]Top [72]Contents [73]Next [74]Previous
328
329      * [75]Command Files, Macros, and Scripts
330      * [76]Command List
331
332    C-Kermit's interactive command language is the subject of a
333    [77]622-page book and another several hundred pages of updates, far too
334    much for a manual page. But it's not hard to get started. At the shell
335    prompt, just type "kermit" to get C-Kermit's interactive command
336    prompt:
337
338   $ kermit
339   (/current/directory) C-Kermit>
340
341    Begin by typing "help" (and then press the Return or Enter key) for a
342    top-level overview, read it, and go from there. Your second command
343    should probably be "intro" (introduction). Note the prompt shows your
344    current directory (unless you tell Kermit to prompt you with something
345    else).
346
347    Interactive commands are composed mainly of regular English words,
348    usually in the form of imperative sentences, such as:
349
350   send oofa.txt
351
352    which tells Kermit to send (transfer) the file whose name is oofa.txt,
353    or:
354
355   set transfer mode automatic
356
357    which sets Kermit's "transfer mode" to "automatic" (whatever that
358    means).
359
360    While typing commands, you can abbreviate, ask for help (by pressing
361    the "?" key anywhere in a command), complete keywords or filenames
362    (with the Tab or Esc key), and edit your typing with Backspace or
363    Delete, Ctrl-W, Ctrl-U, etc. You can also recall previous commands,
364    save your command history, and who knows what else. Give the INTRO
365    command for details.
366
367    C-Kermit has hundreds of commands, and they can be issued in infinite
368    variety and combinations, including commands for:
369
370      * Making connections (SET LINE, DIAL, TELNET, SSH, FTP, CONNECT, ...)
371      * Breaking connections (HANGUP, CLOSE)
372      * Transferring files (SEND, GET, RECEIVE, MOVE, RESEND, ...)
373      * Establishing preferences (SET)
374      * Displaying preferences (SHOW)
375      * Managing local files (CD, DELETE, MKDIR, DIRECTORY, RENAME, TYPE,
376        ...)
377      * Managing remote files (RCD, RDEL, RMKDIR, RDIR, ...)
378      * Using local files (FOPEN, FCLOSE, FREAD, FWRITE)
379      * Programming (TAKE, DEFINE, IF, FOR, WHILE, SWITCH, DECLARE, ...)
380      * Interacting with the user (ECHO, ASK, ...)
381      * Interacting with a remote computer (INPUT, OUTPUT, ...)
382      * Interacting with local programs (RUN, EXEC, PTY, ...)
383      * Logging things (LOG SESSION, LOG PACKETS, LOG DEBUG, ...)
384
385    And of course QUIT or EXIT to get out and HELP to get help, and for
386    programmers: loops, decision making, variables, arrays, associative
387    arrays, integer and floating point arithmetic, macros, built-in and
388    user-defined functions, string manipulation, pattern matching, block
389    structure, scoping, recursion, and all the rest. To get a list of all
390    C-Kermit's commands, type a question mark (?) at the prompt. To get a
391    description of any command, type HELP followed by the name of the
392    command, for example:
393
394   help send
395
396    The command interruption character is Ctrl-C (hold down the Ctrl key
397    and press the C key).
398
399    The command language "escape character", used to introduce variable
400    names, function invocations, and so on, is backslash (\). If you need
401    to include a literal backslash in a command, type two of them, e.g.:
402
403   get c:\\k95\\k95custom.ini
404
405 Command Files, Macros, and Scripts
406
407    A file containing Kermit commands is called a Kermit command file or
408    Kermit script. It can be executed with Kermit's TAKE command:
409
410   (/current/dir) C-Kermit> take commandfile
411
412    (where "commandfile" is the name of the command file). Please don't
413    pipe a command file into Kermit's standard input (which might or might
414    not work); if you have Kermit commands in a file, tell Kermit to TAKE
415    the file.
416
417    In Unix only, a Kermit command file can also be executed directly by
418    including a "kerbang" line as the first line of the file:
419
420   #!/usr/local/bin/kermit +
421
422    That is, a top line that starts with "#!", followed immediately by the
423    full path of the Kermit executable, and then, if the Kermit script is
424    to be given arguments on the command line, a space and a plus sign. The
425    script file must also have execute permission:
426
427   chmod +x commandfile
428
429    Except for the " +" part, this is exactly the same as you would do for
430    a shell script, a Perl script, etc. Here's a simple but useless example
431    script that regurgitates its arguments (up to three of them):
432
433   #!/usr/local/bin/kermit +
434   if defined \%1 echo "Argument 1: \%1"
435   if defined \%2 echo "Argument 2: \%2"
436   if defined \%3 echo "Argument 3: \%3"
437   if defined \%4 echo "etc..."
438   exit
439
440    If this file is stored in your current directory as "commandfile",
441    then:
442
443   ./commandfile one two three four five
444
445    prints:
446
447   Argument 1: one
448   Argument 2: two
449   Argument 3: three
450   etc...
451
452    This illustrates the basic structure of a standalone Kermit script: the
453    "kerbang line", then some commands. It should end with "exit" unless
454    you want the Kermit prompt to appear when it is finished. \%1 is the
455    first argument, \%2 the second, and so on.
456
457    You can also create your own commands by defining named macros composed
458    of other Kermit commands (or macros). Here's a simple example:
459
460   define mydial {
461       set modem type usrobotics
462       set port /dev/ttyS0
463       if fail end 1
464       set speed 57600
465       dial \%1
466       if success connect
467   }
468
469    This shows how you can combine many commands into one command, "mydial"
470    in this case (you can use any name you like, provided it does not clash
471    with the name of a built-in command). When this macro definition is in
472    effect, you can type commands like:
473
474   mydial 7654321
475
476    and it executes all the commands in macro definition, substituting the
477    first operand ("7654321") for the formal parameter ("\%1") in the
478    definition. This saves you from having to type lots of commands every
479    time you want to make a modem call.
480
481    One way to have the macro definition in effect is to type the
482    definition at the Kermit prompt. Another way is to store the definition
483    in a file and TAKE the file. If you want the definition to be in effect
484    automatically every time you start Kermit, put the definition in your
485    initialization or customization file (explained [78]below).
486
487    Here's a somewhat more ambitious example:
488
489   define mydelete {
490       local trash
491       assign trash \v(home)trashcan/
492       if not defined \%1 end 1 "Delete what?"
493       if wild \%1 end 1 "Deleting multiple files is too scary"
494       if not exist \%1 end 1 "I can't find \%1"
495       if not directory \m(trash) {
496           mkdir \m(trash)
497           if fail end 1 "No trash can"
498       }
499       rename /list \%1 \m(trash)
500   }
501   define myundelete {
502       local trash
503       assign trash \v(home)trashcan/
504       if not defined \%1 end 1 "Undelete what?"
505       if wild \%1 end 1 "Undeleting multiple files is too hard"
506       if not directory \m(trash) end 1 "No trash can"
507       if not exist \m(trash)\%1 end 1 "I can't find \%1 in trash can"
508       rename /list \m(trash)\%1 .
509   }
510
511    These macros are not exactly production quality (they don't handle
512    filenames that include path segments, they don't handle multiple files,
513    etc), but you get the idea: you can pass arguments to macros, they can
514    check them and make other kinds of decisions, and the commands
515    themselves are relatively intuitive and intelligible.
516
517    If you put the above lines into your initialization or customization
518    file, you'll have MYDELETE and MYUNDELETE commands available every time
519    you start Kermit, at least as long as you don't suppress execution of
520    the initialization file. (Exercise for the reader: Make these macros
521    generally useful: remove limitations, add trashcan display, browsing,
522    emptying, etc.)
523
524    Kerbang scripts execute without the initialization file. This to keep
525    them portable and also to make them start faster. If you want to write
526    Kerbang scripts that depend on the initialization file, include the
527    command
528
529   take \v(home).kermrc
530
531    at the desired spot in the script. By the way, \v(xxx) is a built-in
532    variable (xxx is the variable name, "home" in this case). To see what
533    built-in variables are available, type "show variables" at the C-Kermit
534    prompt. To see what else you can show, type "show ?". \m(xxx) is a user
535    defined variable (strictly speaking, it is a macro used as a variable).
536
537 Command List
538
539    C-Kermit has more than 200 top-level commands, and some of these, such
540    as SET, branch off into hundreds of subcommands of their own, so it's
541    not practical to describe them all here. Instead, here's a concise list
542    of the most commonly used top-level commands, grouped by category. To
543    learn about each command, type "help" followed by the command name,
544    e.g. "help set". Terms such as Command state and Connect state are
545    explained in subsequent sections.
546
547    Optional fields are shown in [ italicized brackets ]. filename means
548    the name of a single file. filespec means a file specification that is
549    allowed to contain wildcard characters like '*' to match groups of
550    files. options are (optional) switches like /PAGE, /NOPAGE, /QUIET,
551    etc, listed in the HELP text for each command. Example:
552
553   send /recursive /larger:10000 /after:-1week /except:*.txt *
554
555    which can be read as "send all the files in this directory and all the
556    ones underneath it that are larger than 10000 bytes, no more than one
557    week old, and whose names don't end with ".txt".
558
559    Basic Commands
560
561    HELP Requests top-level help.
562    HELP command Requests help about the given command.
563    INTRODUCTION Requests a brief introduction to C-Kermit.
564    LICENSE Displays the C-Kermit software copyright and license.
565    VERSION Displays C-Kermit's version number.
566    EXIT [ number ] Exits from Kermit with the given status code. Synonyms:
567    QUIT, E, Q.
568    TAKE filename [ parameters... ] Executes commands from the given file.
569    LOG item [ filename ] Keeps a log of the given item in the given file.
570    [ DO ] macro [ parameters... ]    Executes commands from the given
571    macro.
572    SET parameter value Sets the given parameter to the given value.
573    SHOW category Shows settings in a given category.
574    STATUS Tells whether previous command succeeded or failed.
575    DATE [ date-and/or-time ] Shows current date-time or interprets given
576    date-time.
577    RUN [ extern-command [ parameters... ] Runs the given external command.
578    Synonym: !.
579    EXEC [ extern-command [ params... ] Kermit overlays itself with the
580    given command.
581    SUSPEND Stops Kermit and puts it in the background. Synonym: Z.
582
583    Local File Management
584
585    TYPE [ options ] filename Displays the contents of the given file.
586    MORE [ options ] filename Equivalent to TYPE /PAGE (pause after each
587    screenful).
588    CAT [ options ] filename Equivalent to TYPE /NOPAGE.
589    HEAD [ options ] filename Displays the first few lines of a given file.
590    TAIL [ options ] filename Displays the last few lines of a given file.
591    GREP [ options ] pattern filespec Displays lines from files that match
592    the pattern. Synonym: FIND.
593    DIRECTORY [ options ] [ filespec ] Lists files (built-in, many
594    options).
595    LS [ options ] [ filespec ] Lists files (runs external "ls" command).
596    DELETE [ options ] [ filespec ] Deletes files. Synonym: RM.
597    PURGE [ options ] [ filespec ] Removes backup (*.~n~) files.
598    COPY [ options ] [ filespecs... ] Copies files. Synonym: CP.
599    RENAME [ options ] [ filespecs... ] Renames files. Synonym: MV.
600    CHMOD [ options ] [ filespecs... ] Changes permissions of files.
601    TRANSLATE filename charsets filename ] Converts file's character set.
602    Synonym: XLATE.
603    CD Changes your working directory to your home directory.
604    CD directory Changes your working directory to the one given.
605    CDUP Changes your working directory one level up.
606    PWD Displays your working directory.
607    BACK Returns to your previous working directory.
608    MKDIR [ directory ] Creates a directory.
609    RMDIR [ directory ] Removes a directory.
610
611    Making Connections
612
613    SET LINE [ options ] devicename        Opens the named serial port.
614    Synonym: SET PORT.
615    OPEN LINE [ options ] devicename Same as SET LINE. Synonym: OPEN PORT.
616    SET MODEM TYPE [ name ] Tells Kermit what kind of modem is on the port.
617    DIAL [ number ] Tells Kermit to dial the given phone number with the
618    modem.
619    REDIAL Redials the most recently dialed phone number.
620    ANSWER Waits for and answers an incoming call on the modem.
621    AUTHENTICATE [ parameters... ] Performs secure authentication on a
622    TCP/IP connection.
623    SET NETWORK TYPE { TCP/IP, X.25, ... } Selects network type for
624    subsequent SET HOST commands.
625    SET HOST [ options ] host [ port ] Opens a network connection to the
626    given host and port.
627    SET HOST [ options ] * port Waits for an incoming TCP/IP connection on
628    the given port.
629    TELNET [ options ] host Opens a Telnet connection to the host and
630    enters Connect state.
631    RLOGIN [ options ] host Opens an Rlogin connection to the host and
632    enters Connect state.
633    IKSD [ options ] host Opens a connection to an Internet Kermit Service.
634    SSH [ options ] host Opens an SSH connection to the host and enters
635    Connect state.
636    FTP OPEN host [ options ] Opens an FTP connection to the host.
637    HTTP [ options ] OPEN host Opens an HTTP connection to the host.
638    PTY external-command Runs the command on a pseudoterminal as if it were
639    a connection.
640    PIPE external-command Runs the command through a pipe as if it were a
641    connection.
642
643    Using Connections
644
645    CONNECT [ options ]                    Enters Connect (terminal) state.
646    Synonym: C.
647    REDIRECT command Redirects the given external command over the
648    connection.
649    TELOPT command Sends a Telnet protocol command (Telnet connections
650    only).
651    Ctrl-\C "Escapes back" from Connect state to Command state.
652    Ctrl-\B (In Connect state) Sends a BREAK signal (serial or Telnet).
653    Ctrl-\! (In Connect state) Enters inferior shell; "exit" to return.
654    Ctrl-\? (In Connect state) Shows a menu of other escape-level options.
655    Ctrl-\Ctrl-\ (In Connect state) Type two Ctrl-Backslashes to send one
656    of them.
657    SET ESCAPE [ character ] Changes Kermit's Connect-state escape
658    character.
659
660    Closing Connections
661
662    HANGUP Hangs up the currently open serial-port or network connection.
663    CLOSE Closes the currently open serial-port or network connection.
664    SET LINE (with no devicename)          Closes the currently open
665    serial-port or network connection.
666    SET HOST (with no hostname) Closes the currently open serial-port or
667    network connection.
668    FTP CLOSE Closes the currently open FTP connection.
669    HTTP CLOSE Closes the currently open HTTP connection.
670    EXIT Also closes all connections. Synonym: QUIT.
671    SET EXIT WARNING OFF Suppresses warning about open connections on exit
672    or close.
673
674    File Transfer
675
676    SEND [ options ] filename [ as-name ]  Sends the given file. Synonym:
677    S.
678    SEND [ options ] filespec Sends all files that match.
679    RESEND [ options ] filespec Resumes an interrupted SEND from the point
680    of failure.
681    RECEIVE [ options ] [ as-name ] Waits passively for files to arrive.
682    Synonym: R.
683    LOG TRANSACTIONS [ filename ] Keeps a record of file transfers.
684    FAST Use fast file-transfer settings (default).
685    CAUTIOUS Use cautious and less fast file-transfer settings.
686    ROBUST Use ultra-conservative and slow file-transfer settings.
687    STATISTICS [ options ] Gives statistics about the most recent file
688    transfer.
689    WHERE After transfer: "Where did my files go?".
690    TRANSMIT [ options ] [ filename ] Sends file without protocol. Synonym:
691    XMIT.
692    LOG SESSION [ filename ] Captures remote text or files without
693    protocol.
694    SET PROTOCOL [ name... ] Tells Kermit to use an external file-transfer
695    protocol.
696    FTP { PUT, MPUT, GET, MGET, ... } FTP client commands.
697    HTTP { PUT, GET, HEAD, POST, ... } HTTP client commands.
698
699    Kermit Server
700
701    ENABLE, DISABLE                        Controls which features can be
702    used by clients.
703    SET SERVER Sets parameters prior to entering Server state.
704    SERVER Enters Server state.
705
706    Client of Kermit or FTP Server
707
708    [ REMOTE ] LOGIN [ user password ] Logs in to a Kermit server or IKSD
709    that requires it.
710    [ REMOTE ] LOGOUT Logs out from a Kermit server or IKSD.
711    SEND [ options ] filename [ as-name ]  Sends the given file to the
712    server. Synonyms: S, PUT.
713    SEND [ options ] filespec Sends all files that match.
714    RESEND [ options ] filespec Resumes an interrupted SEND from the point
715    of failure.
716    GET [ options ] remote-filespec Asks the server to send the given
717    files. Synonym: G.
718    REGET [ options ] remote-filespec Resumes an interrupted GET from the
719    point of failure.
720    REMOTE CD [ directory ] Asks server to change its working directory.
721    Synonym: RCD.
722    REMOTE PWD [ directory ] Asks server to display its working directory.
723    Synonym: RPWD.
724    REMOTE DIRECTORY [ filespec... ] Asks server to send a directory
725    listing. Synonym: RDIR.
726    REMOTE DELETE [ filespec... ] Asks server to delete files. Synonym:
727    RDEL.
728    REMOTE [ command... ] (Many other commands: "remote ?" for a list).
729    MAIL [ options ] filespec Sends file(s) to be delivered as e-mail
730    (Kermit only).
731    FINISH Asks the server to exit server state (Kermit only).
732    BYE Asks the server to log out and close the connection.
733
734    Script Programming
735           DEFINE, DECLARE, UNDEFINE, UNDECLARE, ASSIGN, EVALUATE,
736           SEXPRESSION, ARRAY, SORT, INPUT, OUTPUT, IF, FOR, WHILE, SWITCH,
737           GOTO, ECHO, ASK, GETC, GETOK, ASSERT, WAIT, SLEEP, FOPEN, FREAD,
738           FWRITE, FCLOSE, STOP, END, RETURN, LEARN, SHIFT, TRACE, VOID,
739           INCREMENT, DECREMENT, ... For these and many more you'll need to
740           consult the [79]manual and supplements, and/or visit the
741           [80]Kermit Script Library, which also includes a brief tutorial.
742           Hint: HELP LEARN to find out how to get Kermit to write simple
743           scripts for you.
744
745    Many of Kermit's commands have synonyms, variants, relatives, and so
746    on. For example, MSEND is a version of SEND that accepts a list of file
747    specifications to be sent, rather than just one file specification, and
748    MPUT is a synonym of MSEND. MOVE means to SEND and then DELETE the
749    source file if successful. MMOVE is like MOVE, but accepts a list of
750    filespecs, and so on. These are described in the [81]full
751    documentation.
752
753    Use question mark to feel your way through an unfamiliar command, as in
754    this example (the part you type is underlined):
755
756   C-Kermit> remote ? One of the following:
757    assign     delete     help       login      print      rename     space
758    cd         directory  host       logout     pwd        rmdir      type
759    copy       exit       kermit     mkdir      query      set        who
760   C-Kermit> remote set ? One of the following:
761    attributes   file         retry        transfer
762    block-check  receive      server       window
763   C-Kermit> remote set file ? One of the following:
764    character-set  incomplete     record-length
765    collision      names          type
766   C-Kermit> remote set file names ? One of the following:
767    converted  literal
768   C-Kermit> remote set file names literal
769   C-Kermit>
770
771    This is called menu on demand: you get a menu when you want one, but
772    menus are not forced on you even when know what you're doing. Note that
773    you can also abbreviate most keywords, and you can complete them with
774    the Tab or Esc key. Also note that ? works for filenames too, and that
775    you can use it in the middle of a keyword or filename, not just at the
776    beginning. For example, "send x?" lists all the files in the current
777    directory whose names start with 'x'.
778
779    [82]Kermit Home [83]C-Kermit Home [84]C-Kermit FAQ
780
781 INITIALIZATION FILE
782
783    [85]Top [86]Contents [87]Next [88]Previous
784
785    In its default configuration, C-Kermit executes commands from a file
786    called .kermrc in your home directory when it starts, unless it is
787    given the -Y or -y command-line option. Custom configurations might
788    substitute a shared system-wide initialization file. The SHOW FILE
789    command tells what initialization file, if any, was used. The standard
790    initialization file "chains" to an individual customization file,
791    .mykermc, in the home directory, in which each user can establish
792    her/his own preferences, define macros, and so on.
793
794    Since execution of the initialization file (at least the standard one)
795    makes C-Kermit take longer to start, it might be better not to have an
796    initialization file, especially now that Kermit's default startup
797    configuration is well attuned to modern computing and networking -- in
798    other words, you no longer have do anything special to make Kermit
799    transfers go fast. So instead of having an initialization file that is
800    executed every time Kermit starts, you might consider making one or
801    more kerbang scripts (with names other that .kermrc) that do NOT
802    include an "exit" command, and invoke those when you need the settings,
803    macro definitions, and/or scripted actions they contain, and invoke
804    C-Kermit directly when you don't.
805
806    To put it another way... We still distribute the standard
807    initialization file since it's featured in the manual and backwards
808    compatibility is important to us. But there's no harm in not using it
809    if you don't need the stuff that's in it (services directory, dialing
810    directory, network directory, and associated macro definitions). On the
811    other hand, if there are settings or macros you want in effect EVERY
812    time you use Kermit, the initialization file (or the customization file
813    it chains to) is the place to put them, because that's the only place
814    Kermit looks for them automatically each time you start it.
815
816    [89]Kermit Home [90]C-Kermit Home [91]C-Kermit FAQ
817
818 MODES OF OPERATION
819
820    [92]Top [93]Contents [94]Next [95]Previous
821
822    Kermit is said to be in Local mode if it has made a connection to
823    another computer, e.g. by dialing it or establishing a Telnet
824    connection to it. The other computer is remote, so if you start another
825    copy of Kermit on the remote computer, it is said to be in Remote mode
826    (as long as it has not made any connections of its own). The local
827    Kermit communicates over the communications device or network
828    connection, acting as a conduit between the the remote computer and
829    your keyboard and screen. The remote Kermit is the file-transfer
830    partner to the local Kermit and communicates only through its standard
831    input and output.
832
833    At any moment, a Kermit program can be in any of the following states.
834    It's important to know what they are and how to change from one to the
835    other.
836
837    Command state
838           In this state, Kermit reads commands from:
839
840           + Your keyboard; or:
841           + A file, or:
842           + A macro definition.
843
844           You can exit from Command state back to Unix with the EXIT or
845           QUIT command (same thing). You can enter Connect state with any
846           of various commands (CONNECT, DIAL, TELNET, etc). You can enter
847           file transfer state with commands like SEND, RECEIVE, and GET.
848           You can enter Server state with the SERVER command. The TAKE
849           command tells Kermit to read and execute commands from a file.
850           The (perhaps implied) DO command tells Kermit to read and
851           execute commands from a macro definition. While in Command
852           state, you can interrupt any command, macro, or command file by
853           typing Ctrl-C (hold down the Ctrl key and press the C key); this
854           normally brings you back to the prompt.
855
856    Shell state
857           You can invoke an inferior shell or external command from the
858           Kermit command prompt by using the PUSH, RUN (!), EDIT, or
859           BROWSE command. While the inferior shell or command is active,
860           Kermit is suspended and does nothing. Return to Kermit Command
861           state by exiting from the inferior shell or application.
862
863    Connect state
864           In this state, which can be entered only when in Local mode
865           (i.e. when Kermit has made a connection to another computer),
866           Kermit is acting as a terminal to the remote computer. Your
867           keystrokes are sent to the remote computer and characters that
868           arrive over the communication connection are displayed on your
869           screen. This state is entered when you give a CONNECT, DIAL,
870           TELNET, RLOGIN, or IKSD command. You can return to command state
871           by logging out of the remote computer, or by typing:
872
873   Ctrl-\c
874
875           That is: Hold down the Ctrl key and press the backslash key,
876           then let go of the Ctrl key and press the C key. This is called
877           escaping back. Certain other escape-level commands are also
878           provided; type Ctrl-\? for a list. For example, you can enter
879           Shell state with:
880
881   Ctrl-\!
882
883           To send a Ctrl-\ to the host while in Connect state, type two of
884           them in a row. See HELP CONNECT and HELP SET ESCAPE for more
885           info.
886
887    Local file-transfer state
888           In this state, Kermit is sending packets back and forth with the
889           other computer in order to transfer a file or accomplish some
890           other file-related task. And at the same time, it is displaying
891           its progress on your screen and watching your keyboard for
892           interruptions. In this state, the following single-keystroke
893           commands are accepted:
894
895       X        Interrupt the current file and go on to the next (if any).
896       Z        Interrupt the current file and skip all the rest.
897       E        Like Z but uses a "stronger" protocol (use if X or Z don't work).
898       Ctrl-C   Interrupt file-transfer mode (use if Z or E don't work).
899
900           Kermit returns to its previous state (Command or Connect) when
901           the transfer is complete or when interrupted successfully by X,
902           Z, E, or Ctrl-C (hold down the Ctrl key and press the C key).
903
904    Remote file-transfer state
905           In this state, Kermit is exchanging file-transfer packets with
906           its local partner over its standard i/o. It leaves this state
907           automatically when the transfer is complete. In case you find
908           your local Kermit in Connect state and the remote one in
909           File-transfer state (in which it seems to ignore your
910           keystrokes), you can usually return it to command state by
911           typing three Ctrl-C's in a row. If that doesn't work, return
912           your local Kermit to Command state (Ctrl-\ C) and type
913           "e-packet" and then press the Return or Enter key; this forces a
914           fatal Kermit protocol error.
915
916    Remote Server state
917           This is like Remote File-transfer state, except it never returns
918           automatically to Command state. Rather, it awaits further
919           instructions from the client program; that is, from your Local
920           Kermit program. You can return the Remote Server to its previous
921           state by issuing a "finish" command to the client, or if you are
922           in Connect state, by typing three Ctrl-C's in a row. You can
923           tell the server job to log out and break the connection by
924           issuing a "bye" command to the client.
925
926    Local Server state
927           Like Remote-Server state, but in local mode, and therefore with
928           its file-transfer display showing, and listening for single-key
929           commands, as in Local File-transfer state. Usually this state is
930           entered automatically when a remote Kermit program gives a GET
931           command.
932
933    C-Kermit, Kermit 95, and MS-DOS Kermit all can switch automatically
934    from Connect state to Local File-transfer state when you initiate a
935    file transfer from the remote computer by starting Kermit and telling
936    it to send or get a file, in which case, Connect state is automatically
937    resumed after the file transfer is finished.
938
939    Note that C-Kermit is not a terminal emulator. It is a communications
940    application that you run in a terminal window (e.g. console or Xterm).
941    The specific emulation, such as VT100, VT220, Linux Console, or Xterm,
942    is provided by the terminal window in which you are running C-Kermit.
943    Kermit 95 and MS-DOS Kermit, on the other hand, are true terminal
944    emulators. Why is C-Kermit not a terminal emulator? [96]CLICK HERE to
945    read about it.
946
947    [97]Kermit Home [98]C-Kermit Home [99]C-Kermit FAQ
948
949 MAKING CONNECTIONS
950
951    [100]Top [101]Contents [102]Next [103]Previous
952
953    Here is how to make different kinds of connections using interactive
954    Kermit commands (as noted above, you can also make connections with
955    command-line options). Note that you don't have to make connections
956    with Kermit. It can also be used on the far end of a connection as the
957    remote file transfer and management partner of your local
958    communications software.
959
960    Making a Telnet Connection
961           At the C-Kermit command prompt, simply type:
962
963   telnet foo.bar.com         ; Substitute desired host name or address.
964   telnet xyzcorp.com 3000    ; You can also include a port number.
965
966           If the connection is successful, Kermit automatically enters
967           Connect state. When you logout from the remote host, Kermit
968           automatically returns to its prompt. More info: HELP TELNET,
969           HELP SET TELNET, HELP SET TELOPT. Also see the [104]IKSD section
970           below.
971
972    Making an Rlogin connection
973           This is just like Telnet, except you have to be root to do it
974           because Rlogin uses a privileged TCP port:
975
976   rlogin foo.bar.com         ; Substitute desired host name or address.
977
978           More info: HELP RLOGIN.
979
980    Making an SSH Connection
981           Unlike Telnet and Rlogin, SSH connections are not built-in, but
982           handled by running your external SSH client through a
983           pseudoterminal. Using C-Kermit to control the SSH client gives
984           you all of Kermit's features (file transfer, character-set
985           conversion, scripting, etc) over SSH.
986
987   ssh foo.bar.com            ; Substitute desired host name or address.
988
989           More info: HELP SSH, HELP SET SSH.
990
991    Dialing with a Modem
992           If it's an external modem, make sure it is connected to a usable
993           serial port on your computer with a regular (straight-through)
994           [105]modem cable, and to the telephone jack with a telephone
995           cable, and that it's turned on. Then use these commands:
996
997   set modem type usrobotics  ; Or other supported type
998   set line /dev/ttyS0        ; Specify device name
999   set speed 57600            ; Or other desired speed
1000   set flow rts/cts           ; Most modern modems support this
1001   set dial method tone       ; (or pulse)
1002   dial 7654321               ; Dial the desired number
1003
1004           Type "set modem type ?" for a list of supported modem types. If
1005           you omit the SET MODEM TYPE command, the default type is
1006           "generic-high-speed", which should work for most modern
1007           AT-command-set modems. If the line is busy, Kermit redials
1008           automatically. If the call does not succeed, use "set dial
1009           display on" and try it again to watch what happens. If the call
1010           succeeds, Kermit enters Connect state automatically and returns
1011           to its prompt automatically when you log out from the remote
1012           computer or the connection is otherwise lost.
1013
1014           You can also dial from a modem that is accessible by Telnet,
1015           e.g. to a reverse terminal server. In this case the command
1016           sequence is:
1017
1018   set host ts.xxx.com 2000   ; Terminal-server and port
1019   set modem type usrobotics  ; Or other supported type
1020   set dial method tone       ; (or pulse)
1021   dial 7654321               ; Dial the desired number
1022
1023           If the terminal server supports the Telnet Com Port Option,
1024           [106]RFC 2217, you can also give serial-port related commands
1025           such as SET SPEED, SET PARITY, and so on, and Kermit relays them
1026           to the terminal server using the protocol specified in the RFC.
1027
1028           More info: HELP SET MODEM, HELP SET LINE, HELP SET SPEED, HELP
1029           SET FLOW, HELP DIAL, HELP SET DIAL, HELP SET MODEM, HELP SET
1030           CARRIER-WATCH, SHOW COMMUNICATIONS, SHOW MODEM, SHOW DIAL.
1031
1032    Direct Serial Port
1033           Connect the two computers, A and B, with a [107]null modem cable
1034           (or two modem cables interconnected with a null-modem adapter or
1035           modem eliminator). From Computer A:
1036
1037   set modem type none        ; There is no modem
1038   set line /dev/ttyS0        ; Specify device name
1039   set carrier-watch off      ; If DTR and CD are not cross-connected
1040   set speed 57600            ; Or other desired speed
1041   set flow rts/cts           ; If RTS and CTS are cross-connected
1042   set flow xon/xoff          ; If you can't use RTS/CTS
1043   set parity even            ; (or "mark" or "space", if necessary)
1044   set stop-bits 2            ; (rarely necessary)
1045   connect                    ; Enter Connect (terminal) state
1046
1047           This assumes Computer B is set up to let you log in. If it
1048           isn't, you can run a copy of Kermit on Computer B and follow
1049           approximately the same directions. More info: As above plus HELP
1050           CONNECT.
1051
1052    With modems or direct serial connections, you might also have to "set
1053    parity even" (or "mark" or "space") if it's a 7-bit connection.
1054
1055    Of the connection types listed above, only one can be open at a time.
1056    However, any one of these can be open concurrently with an [108]FTP or
1057    HTTP session. Each connection type can be customized to any desired
1058    degree, scripted, logged, you name it. See the manual.
1059
1060    NOTE: On selected platforms, C-Kermit also can make X.25 connections.
1061    See the manual for details.
1062
1063    [109]Kermit Home [110]C-Kermit Home [111]C-Kermit FAQ
1064
1065 TRANSFERRING FILES WITH KERMIT
1066
1067    [112]Top [113]Contents [114]Next [115]Previous
1068
1069      * [116]Downloading Files
1070      * [117]Uploading Files
1071      * [118]Kermit Transfers the Old-Fashioned Way
1072      * [119]If File Transfer Fails
1073      * [120]Advanced Kermit File Transfer Features
1074      * [121]Non-Kermit File Transfer
1075
1076    There is a [122]widespread and persistent belief that Kermit is a slow
1077    protocol. This is because, until recently, it used conservative tuning
1078    by default to make sure file transfers succeeded, rather than failing
1079    because they overloaded the connection. Some extra commands (or
1080    command-line options, like -Q) were needed to make it go fast, but
1081    nobody bothered to find out about them. Also, it takes two to tango:
1082    most non-Kermit-Project Kermit protocol implementations really ARE
1083    slow. The best file-transfer partners for C-Kermit are: another copy of
1084    [123]C-Kermit (7.0 or later) and [124]Kermit 95. These combinations
1085    work well and they work fast by default. MS-DOS Kermit is good too, but
1086    you have to tell it to go fast (by giving it the FAST command).
1087
1088    Furthermore, all three of these Kermit programs support "autodownload"
1089    and "autoupload", meaning that when they are in Connect state and a
1090    Kermit packet comes in from the remote, they automatically switch into
1091    file transfer mode.
1092
1093    And plus, C-Kermit and K95 also switch automatically between text and
1094    binary mode for each file, so there is no need to "set file type
1095    binary" or "set file type text", or to worry about files being
1096    corrupted because they were transferred in the wrong mode.
1097
1098    What all of these words add up to is that now, when you use up-to-date
1099    Kermit software from the Kermit Project, file transfer is not only
1100    fast, it's ridiculously easy. You barely have to give any commands at
1101    all.
1102
1103    Downloading Files
1104           Let's say you have [125]Kermit 95, [126]C-Kermit, or [127]MS-DOS
1105           Kermit on your desktop computer, with a connection to a Unix
1106           computer that has C-Kermit installed as "kermit". To download a
1107           file (send it from Unix to your desktop computer), just type the
1108           following command at your Unix shell prompt:
1109
1110   kermit -s oofa.txt
1111
1112           (where oofa.txt is the filename). If you want to send more than
1113           one file, you can put as many filenames as you want on the
1114           command line, and they can be any combination of text and
1115           binary:
1116
1117   kermit -s oofa.txt oofa.zip oofa.html oofa.tar.gz
1118
1119           and/or you can use wildcards to send groups of files:
1120
1121   kermit -s oofa.*
1122
1123           If you want to send a file under an assumed name, use:
1124
1125   kermit -s friday.txt -a today.txt
1126
1127           This sends the file friday.txt but tells the receiving Kermit
1128           that its name is today.txt. In all cases, as noted, when the
1129           file transfer is finished, your desktop Kermit returns
1130           automatically to Connect state. No worries about escaping back,
1131           re-connecting, text/binary mode switching. Almost too easy,
1132           right?
1133
1134    Uploading Files
1135           To upload files (send them from your desktop computer to the
1136           remote Unix computer) do the same thing, but use the -g (GET)
1137           option instead of -s:
1138
1139   kermit -g oofa.txt
1140
1141           This causes your local Kermit to enter server mode; then the
1142           remote Kermit program requests the named file and the local
1143           Kermit sends it and returns automatically to Connect state when
1144           done.
1145
1146           If you want to upload multiple files, you have have use shell
1147           quoting rules, since these aren't local files:
1148
1149   kermit -g "oofa.txt oofa.zip oofa.html oofa.tar.gz"
1150   kermit -g "oofa.*"
1151
1152           If you want to upload a file but store it under a different
1153           name, use:
1154
1155   kermit -g friday.txt -a today.txt
1156
1157    Kermit Transfers the Old-Fashioned Way
1158           If your desktop communications software does not support
1159           autoupload or autodownload, or it does not include Kermit server
1160           mode, the procedure requires more steps.
1161
1162           To download a file, type:
1163
1164   kermit -s filename
1165
1166           on the host as before, but if nothing happens automatically in
1167           response to this command, you have to switch your desktop
1168           communications software into Kermit Receive state. This might be
1169           done by escaping back using keyboard characters or hot keys
1170           (Alt-x is typical) and/or with a command (like RECEIVE) or a
1171           menu. When the file transfer is complete, you have to go back to
1172           Connect state, Terminal emulation, or whatever terminology
1173           applies to your desktop communications software.
1174
1175           To upload a file, type:
1176
1177   kermit -r
1178
1179           on the host (rather than "kermit -g"). This tells C-Kermit to
1180           wait passively for a file to start arriving. Then regain the
1181           attention of your desktop software (Alt-x or whatever) and
1182           instruct it to send the desired file(s) with Kermit protocol.
1183           When the transfer is finished, return to the Connect or Terminal
1184           screen.
1185
1186    If File Transfer Fails
1187           Although every aspect of Kermit's operation can be finely tuned,
1188           there are also three short and simple "omnibus tuning" commands
1189           you can use for troubleshooting:
1190
1191         FAST
1192                 Use fast file-transfer settings. This has been the default
1193                 since C-Kermit 7.0 now that most modern computers and
1194                 connections support it. If transfers fail with fast
1195                 settings, try . . .
1196
1197         CAUTIOUS
1198                 Use cautious but not paranoid settings. File transfers, if
1199                 they work, will go at medium speed. If not, try . . .
1200
1201         ROBUST
1202                 Use the most robust, resilient, conservative, safe, and
1203                 reliable settings. File transfers will almost certainly
1204                 work, but they will be quite slow (of course this is a
1205                 classic tradeoff; ROBUST was C-Kermit's default tuning in
1206                 versions 6.0 and earlier, which made everybody think
1207                 Kermit protocol was slow). If ROBUST doesn't do the trick,
1208                 try again with SET PARITY SPACE first in case it's not an
1209                 8-bit connection.
1210
1211           Obviously the success and performance of a file transfer also
1212           depends on C-Kermit's file transfer partner. Up-to-date, real
1213           [128]Kermit Project partners are recommended because they
1214           contain the best Kermit protocol implementations and because
1215           [129]we can support them in case of trouble.
1216
1217           If you still have trouble, consult Chapter 10 of [130]Using
1218           C-Kermit, or send email to [131]kermit-support@columbia.edu.
1219
1220    Advanced Kermit File-Transfer Features
1221           Obviously there is a lot more to Kermit file transfer, including
1222           all sorts of interactive commands, preferences, options,
1223           logging, debugging, troubleshooting, and anything else you can
1224           imagine but that's what the [132]manual and updates are for.
1225           Here are a few topics you can explore if you're interested by
1226           Typing HELP for the listed commands:
1227
1228         Logging transfers:
1229                 LOG TRANSACTIONS (HELP LOG)
1230
1231         Automatic per-file text/binary mode switching:
1232                 SET TRANSFER MODE { AUTOMATIC, MANUAL } (HELP SET
1233                 TRANSFER).
1234
1235         Cross-platform recursive directory tree transfer:
1236                 SEND /RECURSIVE, GET /RECURSIVE (HELP SEND, HELP GET).
1237
1238         File collision options:
1239                 SET FILE COLLISION { OVERWRITE, BACKUP, DISCARD, ... }
1240                 (HELP SET FILE).
1241
1242         Update mode (only transfer files that changed since last time):
1243                 SET FILE COLLISION UPDATE (HELP SET FILE).
1244
1245         Filename selection patterns:
1246                 (HELP WILDCARD).
1247
1248         Flexible file selection:
1249                 SEND (or GET) /BEFORE /AFTER /LARGER /SMALLER /TYPE
1250                 /EXCEPT, ...
1251
1252         Character-set conversion:
1253                 SET { FILE, TRANSFER } CHARACTER-SET, ASSOCIATE, ...
1254
1255         File/Pathname control:
1256                 SET { SEND, RECEIVE } PATHNAMES, SET FILE NAMES.
1257
1258         Atomic file movement:
1259                 SEND (or GET) /DELETE /RENAME /MOVE-TO
1260
1261         Transferring to/from standard i/o of other commands:
1262                 SEND (or GET) /COMMAND
1263
1264         Recovery of interrupted transfer from point of failure:
1265                 RESEND, REGET (HELP RESEND, HELP REGET).
1266
1267    Non-Kermit File Transfer
1268           You can also use C-Kermit to transfer files with FTP or HTTP
1269           Internet protocols; [133]see below.
1270
1271           On a regular serial or Telnet connection where the other
1272           computer doesn't support Kermit protocol at all, you have
1273           several options. For example, if your desktop communications
1274           software supports Zmodem, use "rz" and "sz" on the host rather
1275           than Kermit. But if Kermit is your desktop software, and you are
1276           using it to make calls or network connections to other computers
1277           that don't support Kermit protocol (or that don't have a good
1278           implementation of it), then if your computer also has external
1279           X, Y, or Zmodem programs that are redirectable, Kermit can use
1280           them as external protocols. HELP SET PROTOCOL for details.
1281
1282           You can also capture "raw" data streams from the other computer
1283           with LOG SESSION (HELP LOG and HELP SET SESSION-LOG for
1284           details), and you can upload files without any protocol at all
1285           with TRANSMIT (HELP TRANSMIT, HELP SET TRANSMIT).
1286
1287    [134]Kermit Home [135]C-Kermit Home [136]C-Kermit FAQ
1288
1289 KERMIT CLIENT/SERVER CONNECTIONS
1290
1291    [137]Top [138]Contents [139]Next [140]Previous
1292
1293    On any kind of connection you can make with Kermit -- serial, TCP/IP,
1294    X.25, etc -- you can set up a convenient client/server relationship
1295    between your Kermit client (the one that made the connection) and the
1296    Kermit program on the far end of the connection (the remote Kermit) by
1297    putting the remote Kermit in server mode. This is normally done by
1298    giving it a SERVER command, or by starting it with the -x command-line
1299    option. In some cases ([141]Internet Kermit Service, SSH connections to
1300    a Kermit subsystem, or specially configured hosts), there is already a
1301    Kermit server waiting on the far end. Here is a quick synopsis of the
1302    commands you can give to the client for interacting with the server:
1303
1304    SEND [ switches ] filename
1305           Sends the named file to the server. The filename can include
1306           wildcards. Lots of switches are available for file selection,
1307           etc. Type HELP SEND at the client prompt for details.
1308
1309    GET [ switches ] filename
1310           Asks the server to send the named file. The filename can include
1311           wildcards. Type HELP GET at the client prompt for details.
1312
1313    BYE
1314           Terminates the server and closes your connection to it.
1315
1316    FINISH
1317           Terminates the server. If you started the server yourself, this
1318           leaves the remote host at its shell prompt. If it was a
1319           dedicated server (such as IKSD or an SSH subsystem), FINISH is
1320           equivalent to BYE.
1321
1322    SET LOCUS { LOCAL, REMOTE, AUTO }
1323           (C-Kermit 8.0.201 and later, K95 1.1.21 and later) This tells
1324           the client whether file-management commands like CD, PWD,
1325           DIRECTORY, DELETE, MKDIR, etc, should be executed locally or by
1326           the server. In this type of connection, the default is LOCAL.
1327           Use SET LOCUS REMOTE if you want Kermit to behave like an FTP
1328           client, in which case these commands are executed remotely, and
1329           their local versions must have an L prefix: LCD, LPWD,
1330           LDIRECTORY, etc. When LOCUS is LOCAL, then the remote versions
1331           must have an R prefix: RCD, RPWD, RDIRECTORY, etc. HELP SET
1332           LOCUS for details. SHOW COMMAND to see current locus.
1333
1334    The following commands are affected by SET LOCUS:
1335
1336    CD, LCD, RCD
1337           Change (working, current) directory. HELP CD for details.
1338
1339    CDUP, LCDUP, RCDUP
1340           CD one level up.
1341
1342    DIRECTORY, LDIRECTORY, RDIRECTORY
1343           Produce a directory listing. Many options are available for
1344           local listings. HELP DIRECTORY for details.
1345
1346    DELETE, LDELETE, RDELETE
1347           Deletes files or directories. Many options available, HELP
1348           DELETE.
1349
1350    RENAME, LRENAME, RRENAME
1351           Renames files or directories. Many options available, HELP
1352           RENAME.
1353
1354    MKDIR, LMKDIR, RMKDIR
1355           Creates a directory. HELP MKDIR.
1356
1357    RMDIR, LRMDIR, RRMDIR
1358           Removes a directory. HELP RMDIR.
1359
1360    There are dozens -- maybe hundreds -- of other commands, described in
1361    the built-in help, on the website, and/or in the published or online
1362    manuals. But even if you don't have access to documentation, you can
1363    "set locus remote" and then use pretty much the same commands you would
1364    use with any FTP client.
1365
1366    [142]Kermit Home [143]C-Kermit Home [144]C-Kermit FAQ
1367
1368 KERMIT'S BUILT-IN FTP AND HTTP CLIENTS
1369
1370    [145]Top [146]Contents [147]Next [148]Previous
1371
1372    Kermit's FTP client is like the regular Unix FTP client that you're
1373    used to, but with some differences:
1374
1375      * It has lots more commands and features.
1376      * You can have an FTP session and a regular Kermit serial or Telnet
1377        session open at the same time.
1378      * FTP sessions can be fully automated.
1379
1380    By default Kermit's FTP client tries its best to present the same user
1381    interface as a regular FTP client: PUT, GET, DIR, CD, BYE, etc, should
1382    work the same, even though some of these commands have different
1383    meaning in Kermit-to-Kermit connections; for example, CD, DIR, RENAME,
1384    etc, in Kermit act locally, whereas in FTP they are commands for the
1385    server. This might cause some confusion, but as in all things Kermit,
1386    you have total control:
1387
1388      * The [149]SET LOCUS command lets you specify where file management
1389        commands should be executed -- locally or remotely -- for any kind
1390        of connection.
1391      * Any FTP command can be prefixed with the word "FTP" to remove any
1392        ambiguity.
1393
1394    Pending publication of the next edition of the manual, the Kermit FTP
1395    client is thoroughly documented at the Kermit Project website:
1396
1397   [150]http://www.columbia.edu/kermit/ftpclient.html
1398
1399    You also can use HELP FTP and HELP SET FTP to get descriptions of
1400    Kermit's FTP-related commands.
1401
1402    The HTTP client is similar to the FTP one, except you prefix each
1403    command with HTTP instead of FTP: HTTP OPEN, HTTP GET, HTTP PUT, HTTP
1404    CLOSE, etc. Type HELP HTTP for details, or visit the to view the
1405    [151]manual supplements. HTTP connections can be open at the same time
1406    as regular serial or Telnet connections and FTP connections. So Kermit
1407    can manage up to three types connections simultaneously.
1408
1409    [152]Kermit Home [153]C-Kermit Home [154]C-Kermit FAQ [155]FTP Client
1410    [156]HTTP Client
1411
1412 INTERNET KERMIT SERVICE
1413
1414    [157]Top [158]Contents [159]Next [160]Previous
1415
1416    C-Kermit can be configured and run as an Internet service (called
1417    IKSD), similar to an FTP server (FTPD) except you can (but need not)
1418    interact with it directly, plus it does a lot more than an FTP server
1419    can do. The TCP port for IKSD is 1649. It uses Telnet protocol.
1420    C-Kermit can be an Internet Kermit Server, or it can be a client of an
1421    IKSD. You can make connections from C-Kermit to an IKSD with any of the
1422    following commands:
1423
1424   telnet foo.bar.edu 1649
1425   telnet foo.bar.edu kermit   ; if "kermit" is listed in /etc/services
1426   iksd foo.bar.edu
1427
1428    The IKSD command is equivalent to a TELNET command specifying port
1429    1649. For more information about making and using connections to an
1430    IKSD, see:
1431
1432   [161]http://www.columbia.edu/kermit/cuiksd.html
1433
1434    You can run an Internet Kermit Service on your own computer too (if you
1435    are the system administrator). For instructions, see:
1436
1437   [162]http://www.columbia.edu/kermit/iksd.html
1438
1439    [163]Kermit Home [164]C-Kermit Home [165]C-Kermit FAQ
1440
1441 SECURITY
1442
1443    [166]Top [167]Contents [168]Next [169]Previous
1444
1445    All of C-Kermit's built-in TCP/IP networking methods (Telnet, Rlogin,
1446    IKSD, FTP, and HTTP) can be secured by one or more of the following
1447    IETF-approved methods:
1448
1449      * MIT Kerberos IV
1450      * MIT Kerberos V
1451      * SSL/TLS
1452      * Stanford SRP
1453
1454    For complete instructions see:
1455
1456   [170]http://www.columbia.edu/kermit/security.html
1457
1458    And as noted previously, you can also make SSH connections with
1459    C-Kermit if you already have an SSH client installed.
1460
1461    [171]Kermit Home [172]C-Kermit Home [173]C-Kermit FAQ
1462
1463 ALTERNATIVE COMMAND-LINE PERSONALITIES
1464
1465    [174]Top [175]Contents [176]Next [177]Previous
1466
1467    When invoked as "kermit" or any other name besides any of the special
1468    ones, C-Kermit has the command-line options described above in the
1469    [178]OPTIONS section. However, if you invoke C-Kermit using any of the
1470    following names:
1471
1472      telnet  Telnet client
1473      ftp     FTP client
1474      http    HTTP client
1475      https   Secure HTTP client
1476
1477    Kermit's command-line personality changes to match. This can be done
1478    (among other ways) with symbolic links (symlinks). For example, if you
1479    want C-Kermit to be your regular Telnet client, or the Telnet helper of
1480    your Web browser, you can create a link like the following in a
1481    directory that lies in your PATH ahead of the regular telnet program:
1482
1483   ln -s /usr/local/bin/kermit telnet
1484
1485    Now when you give a "telnet" command, you are invoking Kermit instead,
1486    but with its Telnet command-line personality so, for example:
1487
1488   telnet xyzcorp.com
1489
1490    Makes a Telnet connection to xyzcorp.com, and Kermit exits
1491    automatically when the connection is closed (just like the regular
1492    Telnet client). Type "telnet -h" to get a list of Kermit's
1493    Telnet-personality command-line options, which are intended to be as
1494    compatible as possible with the regular Telnet client.
1495
1496    Similarly for FTP:
1497
1498   ln -s /usr/local/bin/kermit ftp
1499
1500    And now type "ftp -h" to see its command-line options, and use command
1501    lines just like you would give your regular FTP client:
1502
1503   ftp -n xyzcorp.com
1504
1505    but with additional options allowing an entire session to be specified
1506    on the command line, as explained in the C-Kermit [179]FTP client
1507    documentation.
1508
1509    And similarly for HTTP:
1510
1511   ln -s /usr/local/bin/kermit http
1512   ./http -h
1513   ./http www.columbia.edu -g kermit/index.html
1514
1515    Finally, if Kermit's first command-line option is a Telnet, FTP, IKSD,
1516    or HTTP URL, Kermit automatically makes the appropriate kind of
1517    connection and, if indicated by the URL, takes the desired action:
1518
1519   kermit telnet:xyzcorp.com                            ; Opens a Telnet session
1520   kermit telnet://olga@xyzcorp.com                     ; Ditto for user olga
1521   kermit ftp://olga@xyzcorp.com/public/oofa.zip        ; Downloads a file
1522   kermit kermit://kermit.columbia.edu/kermit/f/READ.ME ; Ditto for IKSD
1523   kermit iksd://kermit.columbia.edu/kermit/f/READ.ME   ; (This works too)
1524   kermit http://www.columbia.edu/kermit/index.html     ; Grabs a web page
1525   kermit https://wwws.xyzcorp.com/secret/plan.html     ; Grabs a secure web page
1526
1527    [180]Kermit Home [181]C-Kermit Home [182]C-Kermit FAQ
1528
1529 LICENSE
1530
1531    [183]Top [184]Contents [185]Next [186]Previous
1532
1533    On or before 30 June 2011, barring unforeseen circumstances,
1534    [187]C-Kermit 9.0 will be released with the [188]Revised 3-Clause BSD
1535    License. This is a certified [189]Open Source license, and it means
1536    that C-Kermit no longer needs to be licensed for commercial
1537    redistribution. Technical support for Kermit software will not be
1538    available from Columbia University after June 30th.
1539
1540    [190]Kermit Home [191]C-Kermit Home [192]C-Kermit FAQ
1541
1542 OTHER TOPICS
1543
1544    [193]Top [194]Contents [195]Next [196]Previous
1545
1546    There's way more to C-Kermit than we've touched on here --
1547    troubleshooting, customization, character sets, dialing directories,
1548    sending pages, script writing, and on and on, all of which are covered
1549    in the manual and updates and supplements. For the most up-to-date
1550    information on documentation (or updated documentation itself) visit
1551    the Kermit Project website:
1552
1553   [197]http://www.columbia.edu/kermit/
1554
1555    There you will also find [198]Kermit software packages for other
1556    platforms: different Unix varieties, Windows, DOS, VMS, IBM mainframes,
1557    and many others: 20+ years' worth.
1558
1559    [199]Kermit Home [200]C-Kermit Home [201]C-Kermit FAQ
1560
1561 DOCUMENTATION AND UPDATES
1562
1563    [202]Top [203]Contents [204]Next [205]Previous
1564
1565    The manual for C-Kermit is:
1566
1567     1. Frank da Cruz and Christine M. Gianone, [206]Using C-Kermit, Second
1568        Edition, Digital Press / Butterworth-Heinemann, Woburn, MA, 1997,
1569        622 pages, ISBN 1-55558-164-1. This is a printed book, now also
1570        available as a [207]Kindle E-Book. It covers C-Kermit 6.0.
1571     2. The C-Kermit 7.0 Supplement:
1572        [208]http://www.columbia.edu/kermit/ckermit70.html
1573     3. The C-Kermit 8.0 Supplement:
1574        [209]http://www.columbia.edu/kermit/ckermit80.html
1575     4. The C-Kermit 9.0 Supplement:
1576        [210]http://www.columbia.edu/kermit/ckermit90.html
1577
1578    The C-Kermit home page is here:
1579
1580   [211]http://www.columbia.edu/kermit/ckermit.html
1581
1582    Visit this page to learn about new versions, Beta tests, and other
1583    news; to read case studies and tutorials; to download source code,
1584    install packages, and [212]prebuilt binaries for many platforms. Also
1585    visit:
1586
1587    [213]http://www.columbia.edu/kermit/scriptlib.html
1588           The Kermit script library and tutorial
1589
1590    [214]http://www.columbia.edu/kermit/newfaq.html
1591           The Kermit FAQ (Frequently Asked Questions about Kermit)
1592
1593    [215]http://www.columbia.edu/kermit/ckfaq.html
1594           The C-Kermit FAQ (Frequently Asked Questions about C-Kermit)
1595
1596    [216]http://www.columbia.edu/kermit/security.html
1597           The Kermit security reference.
1598
1599    [217]http://www.columbia.edu/kermit/telnet.html
1600           C-Kermit Telnet client documentation.
1601
1602    [218]http://www.columbia.edu/kermit/studies.html
1603           Case studies.
1604
1605    [219]http://www.columbia.edu/kermit/ckcbwr.html
1606           General C-Kermit Hints and Tips.
1607
1608    [220]http://www.columbia.edu/kermit/ckubwr.html
1609           Unix C-Kermit Hints and Tips.
1610
1611    [221]http://www.columbia.edu/kermit/ckvbwr.html
1612           VMS C-Kermit Hints and Tips.
1613
1614    [222]http://www.columbia.edu/kermit/ckuins.html
1615           Unix C-Kermit Installation Instructions
1616
1617    [223]http://www.columbia.edu/kermit/ckvins.html
1618           VMS C-Kermit Installation Instructions
1619
1620    [224]http://www.columbia.edu/kermit/support.html
1621           Technical support.
1622
1623    [225]http://www.columbia.edu/kermit/k95tutorial.html
1624           Kermit 95 tutorial (this document).
1625
1626    [226]comp.protocols.kermit.misc
1627           The Kermit newsgroup (unmoderated).
1628
1629    [227]Kermit Home [228]C-Kermit Home [229]C-Kermit FAQ
1630
1631 FILES
1632
1633    [230]Top [231]Contents [232]Next [233]Previous
1634
1635           [234]The Revised 3-Clause License
1636           C-Kermit license.
1637
1638    [235]~/.kermrc
1639           Initialization file.
1640
1641    [236]~/.mykermrc
1642           Customization file.
1643
1644    ~/.kdd
1645           Kermit dialing directory (see manual).
1646
1647    ~/.knd
1648           Kermit network directory (see manual).
1649
1650    ~/.ksd
1651           Kermit services directory (see manual).
1652
1653    [237]ckuins.html
1654           Installation instructions for Unix.
1655
1656    [238]ckcbwr.html
1657           General C-Kermit bugs, hints, tips.
1658
1659    [239]ckubwr.html
1660           Unix-specific C-Kermit bugs, hints, tips.
1661
1662    [240]ckcplm.html
1663           C-Kermit program logic manual.
1664
1665    [241]ckccfg.html
1666           C-Kermit compile-time configuration options.
1667
1668    ssh
1669           (in your PATH) SSH connection helper.
1670
1671    rz, sz, etc.
1672           (in your PATH) external protocols for XYZmodem.
1673
1674    /var/spool/locks (or whatever)
1675           UUCP lockfile for dialing out (see [242]installation
1676           instructions).
1677
1678    [243]Kermit Home [244]C-Kermit Home [245]C-Kermit FAQ
1679
1680 AUTHORS
1681
1682    [246]Top [247]Contents [248]Previous
1683
1684      Frank da Cruz and Jeffrey E Altman
1685      The Kermit Project - Columbia Univerity
1686      612 West 115th Street
1687      New York NY 10025-7799
1688      USA
1689
1690    1985-present, with contributions from hundreds of others all over the
1691    world.
1692      __________________________________________________________________
1693
1694
1695     C-Kermit 9.0 Unix Manual Page and Tutorial / [249]kermit@columbia.edu
1696     / 1 July 2011
1697
1698 References
1699
1700    1. http://www.columbia.edu/
1701    2. mailto:kermit@columbia.edu
1702    3. http://www.columbia.edu/kermit/index.html
1703    4. http://www.columbia.edu/kermit/k95.html
1704    5. http://www.columbia.edu/kermit/ckermit.html
1705    6. http://www.columbia.edu/kermit/ckscripts.html
1706    7. http://www.columbia.edu/kermit/current.html
1707    8. http://www.columbia.edu/kermit/whatsnew.html
1708    9. http://www.columbia.edu/kermit/ckfaq.html
1709   10. http://www.columbia.edu/kermit/support.html
1710   11. http://www.columbia.edu/kermit/
1711   12. http://www.columbia.edu/
1712   13. http://www.columbia.edu/kermit/ckututor.pdf
1713   14. ftp://kermit.columbia.edu/kermit/test/text/ckuker.nr
1714   15. http://www.amazon.com/gp/product/1555581641?ie=UTF8&tag=aleidmoreldom-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1555581641
1715   16. http://www.columbia.edu/kermit/ckututor.html#description
1716   17. http://www.columbia.edu/kermit/ckututor.html#synopsis
1717   18. http://www.columbia.edu/kermit/ckututor.html#options
1718   19. http://www.columbia.edu/kermit/ckututor.html#commands
1719   20. http://www.columbia.edu/kermit/ckututor.html#initfile
1720   21. http://www.columbia.edu/kermit/ckututor.html#modes
1721   22. http://www.columbia.edu/kermit/ckututor.html#connections
1722   23. http://www.columbia.edu/kermit/ckututor.html#transfer
1723   24. http://www.columbia.edu/kermit/ckututor.html#server
1724   25. http://www.columbia.edu/kermit/ckututor.html#ftp
1725   26. http://www.columbia.edu/kermit/ckututor.html#iksd
1726   27. http://www.columbia.edu/kermit/ckututor.html#security
1727   28. http://www.columbia.edu/kermit/ckututor.html#personae
1728   29. http://www.columbia.edu/kermit/ckututor.html#license
1729   30. http://www.columbia.edu/kermit/ckututor.html#other
1730   31. http://www.columbia.edu/kermit/ckututor.html#documentation
1731   32. http://www.columbia.edu/kermit/ckututor.html#files
1732   33. http://www.columbia.edu/kermit/ckututor.html#authors
1733   34. http://www.columbia.edu/kermit/ckututor.html#top
1734   35. http://www.columbia.edu/kermit/ckututor.html#contents
1735   36. http://www.columbia.edu/kermit/ckututor.html#synopsis
1736   37. http://www.columbia.edu/kermit/ckermit.html
1737   38. http://www.columbia.edu/kermit/
1738   39. http://www.columbia.edu/
1739   40. ftp://ftp.isi.edu/in-notes/rfc2839.txt
1740   41. ftp://ftp.isi.edu/in-notes/rfc2840.txt
1741   42. http://www.columbia.edu/kermit/ckututor.html#documentation
1742   43. http://www.columbia.edu/kermit/
1743   44. http://www.columbia.edu/kermit/
1744   45. http://www.columbia.edu/kermit/ckermit.html
1745   46. http://www.columbia.edu/kermit/ckfaq.html
1746   47. http://www.columbia.edu/kermit/ckututor.html#top
1747   48. http://www.columbia.edu/kermit/ckututor.html#contents
1748   49. http://www.columbia.edu/kermit/ckututor.html#options
1749   50. http://www.columbia.edu/kermit/ckututor.html#synopsis
1750   51. http://www.columbia.edu/kermit/ckututor.html#kerbang
1751   52. http://www.columbia.edu/kermit/ckututor.html#personae
1752   53. http://www.columbia.edu/kermit/ckututor.html#kerbang
1753   54. http://www.columbia.edu/kermit/ckututor.html#initfile
1754   55. http://www.columbia.edu/kermit/ckututor.html#initfile
1755   56. http://www.columbia.edu/kermit/ckututor.html#personae
1756   57. http://www.columbia.edu/kermit/ckututor.html#options
1757   58. http://www.columbia.edu/kermit/ckututor.html#commands
1758   59. http://www.columbia.edu/kermit/
1759   60. http://www.columbia.edu/kermit/ckermit.html
1760   61. http://www.columbia.edu/kermit/ckfaq.html
1761   62. http://www.columbia.edu/kermit/ckututor.html#top
1762   63. http://www.columbia.edu/kermit/ckututor.html#contents
1763   64. http://www.columbia.edu/kermit/ckututor.html#commands
1764   65. http://www.columbia.edu/kermit/ckututor.html#description
1765   66. http://www.columbia.edu/kermit/ckututor.html#commands
1766   67. http://www.columbia.edu/kermit/ckututor.html#personae
1767   68. http://www.columbia.edu/kermit/ckututor.html#personae
1768   69. http://www.columbia.edu/kermit/ckututor.html#iksd
1769   70. http://www.columbia.edu/kermit/ckututor.html#transfer
1770   71. http://www.columbia.edu/kermit/ckututor.html#top
1771   72. http://www.columbia.edu/kermit/ckututor.html#contents
1772   73. http://www.columbia.edu/kermit/ckututor.html#initfile
1773   74. http://www.columbia.edu/kermit/ckututor.html#options
1774   75. http://www.columbia.edu/kermit/ckututor.html#kerbang
1775   76. http://www.columbia.edu/kermit/ckututor.html#cmdlist
1776   77. http://www.columbia.edu/kermit/ckututor.html#documentation
1777   78. http://www.columbia.edu/kermit/ckututor.html#initfile
1778   79. http://www.columbia.edu/kermit/ckututor.html#documentation
1779   80. http://www.columbia.edu/kermit/ckscripts.html
1780   81. http://www.columbia.edu/kermit/ckututor.html#documentation
1781   82. http://www.columbia.edu/kermit/
1782   83. http://www.columbia.edu/kermit/ckermit.html
1783   84. http://www.columbia.edu/kermit/ckfaq.html
1784   85. http://www.columbia.edu/kermit/ckututor.html#top
1785   86. http://www.columbia.edu/kermit/ckututor.html#contents
1786   87. http://www.columbia.edu/kermit/ckututor.html#modes
1787   88. http://www.columbia.edu/kermit/ckututor.html#commands
1788   89. http://www.columbia.edu/kermit/
1789   90. http://www.columbia.edu/kermit/ckermit.html
1790   91. http://www.columbia.edu/kermit/ckfaq.html
1791   92. http://www.columbia.edu/kermit/ckututor.html#top
1792   93. http://www.columbia.edu/kermit/ckututor.html#contents
1793   94. http://www.columbia.edu/kermit/ckututor.html#connections
1794   95. http://www.columbia.edu/kermit/ckututor.html#initfile
1795   96. http://www.columbia.edu/kermit/ckfaq.html#term
1796   97. http://www.columbia.edu/kermit/
1797   98. http://www.columbia.edu/kermit/ckermit.html
1798   99. http://www.columbia.edu/kermit/ckfaq.html
1799  100. http://www.columbia.edu/kermit/ckututor.html#top
1800  101. http://www.columbia.edu/kermit/ckututor.html#contents
1801  102. http://www.columbia.edu/kermit/ckututor.html#transfer
1802  103. http://www.columbia.edu/kermit/ckututor.html#modes
1803  104. http://www.columbia.edu/kermit/ckututor.html#iksd
1804  105. http://www.columbia.edu/kermit/cable.html
1805  106. ftp://ftp.isi.edu/in-notes/rfc2217.txt
1806  107. http://www.columbia.edu/kermit/cable.html
1807  108. http://www.columbia.edu/kermit/ckututor.html#ftp
1808  109. http://www.columbia.edu/kermit/
1809  110. http://www.columbia.edu/kermit/ckermit.html
1810  111. http://www.columbia.edu/kermit/ckfaq.html
1811  112. http://www.columbia.edu/kermit/ckututor.html#top
1812  113. http://www.columbia.edu/kermit/ckututor.html#contents
1813  114. http://www.columbia.edu/kermit/ckututor.html#server
1814  115. http://www.columbia.edu/kermit/ckututor.html#connections
1815  116. http://www.columbia.edu/kermit/ckututor.html#download
1816  117. http://www.columbia.edu/kermit/ckututor.html#upload
1817  118. http://www.columbia.edu/kermit/ckututor.html#oldfashioned
1818  119. http://www.columbia.edu/kermit/ckututor.html#trouble
1819  120. http://www.columbia.edu/kermit/ckututor.html#advanced
1820  121. http://www.columbia.edu/kermit/ckututor.html#nonkermit
1821  122. http://www.columbia.edu/kermit/kermit.html#notslow
1822  123. http://www.columbia.edu/kermit/ckermit.html
1823  124. http://www.columbia.edu/kermit/k95.html
1824  125. http://www.columbia.edu/kermit/k95.html
1825  126. http://www.columbia.edu/kermit/ckermit.html
1826  127. http://www.columbia.edu/kermit/mskermit.html
1827  128. http://www.columbia.edu/kermit/
1828  129. http://www.columbia.edu/kermit/support.html
1829  130. http://www.columbia.edu/kermit/ckmanual.html
1830  131. mailto:kermit-support@columbia.edu
1831  132. http://www.columbia.edu/kermit/ckututor.html#documentation
1832  133. http://www.columbia.edu/kermit/ckututor.html#ftp
1833  134. http://www.columbia.edu/kermit/
1834  135. http://www.columbia.edu/kermit/ckermit.html
1835  136. http://www.columbia.edu/kermit/ckfaq.html
1836  137. http://www.columbia.edu/kermit/ckututor.html#top
1837  138. http://www.columbia.edu/kermit/ckututor.html#contents
1838  139. http://www.columbia.edu/kermit/ckututor.html#ftp
1839  140. http://www.columbia.edu/kermit/ckututor.html#transfer
1840  141. http://www.columbia.edu/kermit/ckututor.html#iksd
1841  142. http://www.columbia.edu/kermit/
1842  143. http://www.columbia.edu/kermit/ckermit.html
1843  144. http://www.columbia.edu/kermit/ckfaq.html
1844  145. http://www.columbia.edu/kermit/ckututor.html#top
1845  146. http://www.columbia.edu/kermit/ckututor.html#contents
1846  147. http://www.columbia.edu/kermit/ckututor.html#iksd
1847  148. http://www.columbia.edu/kermit/ckututor.html#transfer
1848  149. http://www.columbia.edu/kermit/ckututor.html#server
1849  150. http://www.columbia.edu/kermit/ftpclient.html
1850  151. http://www.columbia.edu/kermit/ckututor.html#documentation
1851  152. http://www.columbia.edu/kermit/
1852  153. http://www.columbia.edu/kermit/ckermit.html
1853  154. http://www.columbia.edu/kermit/ckfaq.html
1854  155. http://www.columbia.edu/kermit/ckermit3.html#x3
1855  156. http://www.columbia.edu/kermit/ckermit3.html#x2.2
1856  157. http://www.columbia.edu/kermit/ckututor.html#top
1857  158. http://www.columbia.edu/kermit/ckututor.html#contents
1858  159. http://www.columbia.edu/kermit/ckututor.html#security
1859  160. http://www.columbia.edu/kermit/ckututor.html#ftp
1860  161. http://www.columbia.edu/kermit/cuiksd.html
1861  162. http://www.columbia.edu/kermit/iksd.html
1862  163. http://www.columbia.edu/kermit/
1863  164. http://www.columbia.edu/kermit/ckermit.html
1864  165. http://www.columbia.edu/kermit/ckfaq.html
1865  166. http://www.columbia.edu/kermit/ckututor.html#top
1866  167. http://www.columbia.edu/kermit/ckututor.html#contents
1867  168. http://www.columbia.edu/kermit/ckututor.html#personae
1868  169. http://www.columbia.edu/kermit/ckututor.html#iksd
1869  170. http://www.columbia.edu/kermit/security.html
1870  171. http://www.columbia.edu/kermit/
1871  172. http://www.columbia.edu/kermit/ckermit.html
1872  173. http://www.columbia.edu/kermit/ckfaq.html
1873  174. http://www.columbia.edu/kermit/ckututor.html#top
1874  175. http://www.columbia.edu/kermit/ckututor.html#contents
1875  176. http://www.columbia.edu/kermit/ckututor.html#license
1876  177. http://www.columbia.edu/kermit/ckututor.html#iksd
1877  178. http://www.columbia.edu/kermit/ckututor.html#options
1878  179. http://www.columbia.edu/kermit/ckermit3.html#x3.1.2
1879  180. http://www.columbia.edu/kermit/
1880  181. http://www.columbia.edu/kermit/ckermit.html
1881  182. http://www.columbia.edu/kermit/ckfaq.html
1882  183. http://www.columbia.edu/kermit/ckututor.html#top
1883  184. http://www.columbia.edu/kermit/ckututor.html#contents
1884  185. http://www.columbia.edu/kermit/ckututor.html#other
1885  186. http://www.columbia.edu/kermit/ckututor.html#personae
1886  187. http://www.columbia.edu/kermit/ck90.html
1887  188. http://www.columbia.edu/kermit/cu-bsd-license.html
1888  189. http://www.opensource.org/
1889  190. http://www.columbia.edu/kermit/
1890  191. http://www.columbia.edu/kermit/ckermit.html
1891  192. http://www.columbia.edu/kermit/ckfaq.html
1892  193. http://www.columbia.edu/kermit/ckututor.html#top
1893  194. http://www.columbia.edu/kermit/ckututor.html#contents
1894  195. http://www.columbia.edu/kermit/ckututor.html#documentation
1895  196. http://www.columbia.edu/kermit/ckututor.html#license
1896  197. http://www.columbia.edu/kermit/
1897  198. http://www.columbia.edu/kermit/howtoget.html
1898  199. http://www.columbia.edu/kermit/
1899  200. http://www.columbia.edu/kermit/ckermit.html
1900  201. http://www.columbia.edu/kermit/ckfaq.html
1901  202. http://www.columbia.edu/kermit/ckututor.html#top
1902  203. http://www.columbia.edu/kermit/ckututor.html#contents
1903  204. http://www.columbia.edu/kermit/ckututor.html#files
1904  205. http://www.columbia.edu/kermit/ckututor.html#other
1905  206. http://www.columbia.edu/kermit/ckmanual.html
1906  207. http://www.amazon.com/gp/product/B002ACPF9M?ie=UTF8&tag=aleidmoreldom-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=B002ACPF9M
1907  208. http://www.columbia.edu/kermit/ckermit70.html
1908  209. http://www.columbia.edu/kermit/ckermit80.html
1909  210. http://www.columbia.edu/kermit/ckermit90.html
1910  211. http://www.columbia.edu/kermit/ckermit.html
1911  212. http://www.columbia.edu/kermit/ck80binaries.html
1912  213. http://www.columbia.edu/kermit/scriptlib.html
1913  214. http://www.columbia.edu/kermit/newfaq.html
1914  215. http://www.columbia.edu/kermit/ckfaq.html
1915  216. http://www.columbia.edu/kermit/security.html
1916  217. http://www.columbia.edu/kermit/telnet.html
1917  218. http://www.columbia.edu/kermit/studies.html
1918  219. http://www.columbia.edu/kermit/ckcbwr.html
1919  220. http://www.columbia.edu/kermit/ckubwr.html
1920  221. http://www.columbia.edu/kermit/ckvbwr.html
1921  222. http://www.columbia.edu/kermit/ckuins.html
1922  223. http://www.columbia.edu/kermit/ckvins.html
1923  224. http://www.columbia.edu/kermit/support.html
1924  225. http://www.columbia.edu/kermit/k95tutorial.html
1925  226. news:comp.protocols.kermit.misc
1926  227. http://www.columbia.edu/kermit/
1927  228. http://www.columbia.edu/kermit/ckermit.html
1928  229. http://www.columbia.edu/kermit/ckfaq.html
1929  230. http://www.columbia.edu/kermit/ckututor.html#top
1930  231. http://www.columbia.edu/kermit/ckututor.html#contents
1931  232. http://www.columbia.edu/kermit/ckututor.html#authors
1932  233. http://www.columbia.edu/kermit/ckututor.html#documentation
1933  234. http://www.columbia.edu/kermit/cu-bsd-license.html
1934  235. ftp://kermit.columbia.edu/kermit/c-kermit/ckermit.ini
1935  236. ftp://kermit.columbia.edu/kermit/c-kermit/ckermod.ini
1936  237. http://www.columbia.edu/kermit/ckuins.html
1937  238. http://www.columbia.edu/kermit/ckcbwr.html
1938  239. http://www.columbia.edu/kermit/ckubwr.html
1939  240. http://www.columbia.edu/kermit/ckcplm.html
1940  241. http://www.columbia.edu/kermit/ckccfg.html
1941  242. http://www.columbia.edu/kermit/ckuins.html
1942  243. http://www.columbia.edu/kermit/
1943  244. http://www.columbia.edu/kermit/ckermit.html
1944  245. http://www.columbia.edu/kermit/ckfaq.html
1945  246. http://www.columbia.edu/kermit/ckututor.html#top
1946  247. http://www.columbia.edu/kermit/ckututor.html#contents
1947  248. http://www.columbia.edu/kermit/ckututor.html#files
1948  249. mailto:kermit@columbia.edu