CON(1)                                                     CON(1)

          con, telnet, rx, hayes, xms, xmr - remote login, execution,
          and XMODEM file transfer

          con [ -CdnrRsTv ] [ -b baud ] [ -l [ user ] ] [ -S svc ] [
          -c cmd ] [net!]machine

          telnet [ -dCrn ] [ -s svc ] [net!]machine

          rx [ -eTr ] [ -l user ] [net!]machine [ command-word ... ]

          hayes [ -pv ] number [ device ]

          xms [ -1p ] file

          xmr file

          Con connects to the computer whose network address is
          net!machine and logs in if possible.  With no options, the
          account name used on the remote system is the same as that
          on the local system.  Standard input and output go to the
          local machine.

          Options are:

          -b   sets the baud rate of a dial-up connection to baud.

          -n   if the input is a file or pipe, do not hang up the con-
               nection when EOF is received, but instead wait for the
               remote end to hang up.

          -l   with an argument causes user to be used as the account
               name on the remote system when performing BSD rlogin
               authentication.  Without an argument this option dis-
               ables automatic login and a normal login session

          -C   forces cooked mode, that is, local echo.

          -c   runs cmd as if it had been typed as a command from the
               escape mode.

          -v   (verbose mode) causes information about connection
               attempts to be output to standard error.  This can be
               useful when trying to debug network connectivity.

          -d   causes debugging information to be output to standard

     Page 1                       Plan 9             (printed 4/23/24)

     CON(1)                                                     CON(1)

          -r   suppresses printing of any carriage return followed by
               a new line.  This is useful since carriage return is a
               printable character in Plan 9.

          -R   translates newlines to carriage returns and vice versa.

          -T   translates incoming carriage returns to newlines.

          -s   strips received characters to 7 bits to forestall mis-
               interpretation of ASCII with parity as UTF.

          -S   Post a pipe as /srv/svc and connect it to standard
               input and output.  This can be used with -n to create a
               standing connection that consolefs(4), for example, can
               then open.  For telnet, this option is -s.

          The control-\ character is a local escape.  It prompts with
          >>>.  Legitimate responses to the prompt are

          i    Send a quit [sic] signal to the remote machine.
          q    Exit.
          b    Send a break.
          .    Return from the escape.
          !cmd Run the command with the network connection as its
               standard input and standard output.  Standard error
               will go to the screen.  This is useful for transmitting
               and receiving files over the connections using programs
               such as xms.
          r    Toggle printing of carriage returns.

          Telnet is similar to con, but uses the telnet protocol to
          communicate with the remote machine.  It shares con's -C,
          -d, -n, and -r options.

          Rx executes one shell command on the remote machine as if
          logged in there, but with local standard input and output.
          A rudimentary shell environment is provided.  If the target
          is a Plan 9 machine, $service there will be rx.  Options

          -e   a zero length message will not be written to the con-
               nection when standard input is closed.

          -l   runs as user on the remote machine if the remote is a
               BSD machine.

          -r   same as for con

          -T   same as for con

          Network addresses for both con and rx have the form
          network!machine.  Supported networks are those listed in

     Page 2                       Plan 9             (printed 4/23/24)

     CON(1)                                                     CON(1)


          Hayes dials number on a Hayes-compatible modem, device.
          Under -p, it uses pulse dialing.  Upon connecting, bytes are
          copied bidirectionally between the connection and standard
          input and output.

          The commands xms and xmr respectively send and receive a
          single file using the XMODEM protocol.  They use standard
          input and standard output for communication and are intended
          for use with con. The -1 option to xms causes it to use
          kilobyte packet size of 1024 bytes.  The -p option causes it
          to print a progress message every ten kilobytes.

          rx kremvax cat file1 >file2
               Copy remote file1 to local file2.

          rx kremvax cat file1 '>file2'
               Copy remote file1 to remote file2.

          eqn paper | rx kremvax troff -ms | rx deepthought lp
               Parallel processing: do each stage of a pipeline on a
               different machine.

          /sys/src/cmd/con          for all other commands

          cpu(1), telco(4)

          Con and telnet are merely obsolescent; the other commands
          are obsolete and deprecated.

          Under rx, a program that should behave specially towards
          terminals may not: e.g., remote shells will not prompt.
          Also under rx, the remote standard error and standard output
          are combined and go inseparably to the local standard out-
          put.  Rx will consume its standard input by copying it to
          the remote system, so redirect it from /dev/null if that's
          not what you want.

     Page 3                       Plan 9             (printed 4/23/24)