CON(1) CON(1)
NAME
con, telnet, rx, xms, xmr - remote login, execution, and
XMODEM file transfer
SYNOPSIS
con [ -CdnrRvs ] [ -b baud ] [ -l [ remuser ] ] [ -c cmd ]
[net!]machine
telnet [ -dCrn ] [net!]machine
cu number
rx [ -e ] [ -l remuser ] [net!]machine [ command-word ... ]
xms file
xmr file
DESCRIPTION
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 remuser to be used as the
account name on the remote system. Without an argument
this option disables automatic login and a normal login
session ensues.
-C forces cooked mode, that is, local echo.
-c runs cmd as if it had been typed as a command from the
escape mode. This is used by cu.
-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
error.
Page 1 Plan 9 (printed 10/28/25)
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 viceversa.
-s strips received characters to 7 bits to forestall mis-
interpretation of ASCII with parity as UTF.
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. The -e
option causes a zero length message to be written to the
connection when standard input is closed. The -l option
causes remuser to be used on the remote machine if the
remote is a BSD machine.
Network addresses for both con and rx have the form
network!machine. Supported networks are those listed in
/net.
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.
EXAMPLES
rx kremvax cat file1 >file2
Copy remote file1 to local file2.
rx kremvax cat file1 '>file2'
Copy remote file1 to remote file2.
Page 2 Plan 9 (printed 10/28/25)
CON(1) CON(1)
eqn paper | rx kremvax troff -ms | rx deepthought lp
Parallel processing: do each stage of a pipeline on a
different machine.
SOURCE
/sys/src/cmd/con for con, xms, and xmr.
/sys/src/cmd/ip for telnet.
BUGS
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.
Page 3 Plan 9 (printed 10/28/25)