Man Linux: Main Page and Category List


       cu - Call up another system


       cu [ options ] [ system | phone | "dir" ]


       The  cu  command is used to call up another system and act as a dial in
       terminal.  It can also do simple file transfers with no error checking.

       cu  takes  a  single argument, besides the options.  If the argument is
       the string "dir" cu will make a direct connection to  the  port.   This
       may  only be used by users with write access to the port, as it permits
       reprogramming the modem.

       Otherwise, if the argument begins with a digit, it is  taken  to  be  a
       phone  number  to  call.   Otherwise,  it  is taken to be the name of a
       system to call.  The -z or --system option may be used to name a system
       beginning  with  a  digit,  and the -c or --phone option may be used to
       name a phone number that does not begin with a digit.

       cu locates a port to use in the UUCP configuration files.  If a  simple
       system  name  is  given,  it  will  select  a port appropriate for that
       system.  The -p, --port, -l, --line, -s and --speed options may be used
       to control the port selection.

       When  a  connection  is  made  to  the remote system, cu forks into two
       processes.  One reads from the port and writes to the  terminal,  while
       the other reads from the terminal and writes to the port.

       cu  provides several commands that may be used during the conversation.
       The commands all begin with an escape character, initially  ~  (tilde).
       The escape character is only recognized at the beginning of a line.  To
       send an escape character to the remote system at the start of  a  line,
       it  must  be entered twice.  All commands are either a single character
       or a word beginning with % (percent sign).

       cu recognizes the following commands:

       ~.   Terminate the conversation.

       ~! command
            Run command in a shell.  If command is empty, starts up a shell.

       ~$ command
            Run command, sending the standard output to the remote system.

       ~| command
            Run command, taking the standard input from the remote system.

       ~+ command
            Run command, taking the standard input from the remote system  and
            sending the standard output to the remote system.

       ~#, ~%break
            Send a break signal, if possible.

       ~c directory, ~%cd directory
            Change the local directory.

       ~> file
            Send  a  file to the remote system.  This just dumps the file over
            the communication line.  It is assumed that the remote  system  is
            expecting it.

       ~<   Receive a file from the remote system.  This prompts for the local
            file name and for the remote command to execute to begin the  file
            transfer.   It  continues accepting data until the contents of the
            eofread variable are seen.

       ~p from to, ~%put from to
            Send a file to a remote Unix system.  This  runs  the  appropriate
            commands on the remote system.

       ~t from to, ~%take from to
            Retrieve  a  file  from  a  remote  Unix  system.   This  runs the
            appropriate commands on the remote system.

       ~s variable value
            Set a cu variable to the given value.  If value is not given,  the
            variable is set to true.

       ~! variable
            Set a cu variable to false.

       ~z   Suspend  the  cu session.  This is only supported on some systems.
            On systems for which ^Z may be used to suspend  a  job,  ~^Z  will
            also suspend the session.

            Turn off XON/XOFF handling.

            Turn on XON/XOFF handling.

       ~v   List all the variables and their values.

       ~?   List all commands.

            cu  also  supports several variables.  They may be listed with the
            ~v command, and set with the ~s or ~!  commands.

            The escape character.  Initially ~ (tilde).

            If this variable is  true,  cu  will  delay  for  a  second  after
            recognizing  the  escape character before printing the name of the
            local system.  The default is true.

       eol  The list of characters which are considered to finish a line.  The
            escape  character  is  only recognized after one of these is seen.
            The default is carriage return, ^U, ^C, ^O, ^D, ^S, ^Q, ^R.

            Whether to transfer binary data when sending a file.  If  this  is
            false,  then  newlines  in  the  file  being sent are converted to
            carriage returns.  The default is false.

            A string  used  before  sending  a  binary  character  in  a  file
            transfer, if the binary variable is true.  The default is ^V.

            Whether  to  check  file  transfers  by  examining what the remote
            system echoes back.  This probably doesn’t work  very  well.   The
            default is false.

            The  character to look for after sending each line in a file.  The
            default is carriage return.

            The timeout to use, in seconds,  when  looking  for  a  character,
            either  when  doing  echo  checking or when looking for the echonl
            character.  The default is 30.

       kill The character to use delete a line if the echo check  fails.   The
            default is ^U.

            The  number  of times to resend a line if the echo check continues
            to fail.  The default is 10.

            The string to write after sending a file with the ~> command.  The
            default is ^D.

            The  string to look for when receiving a file with the ~< command.
            The default is $, which is intended to be a typical shell  prompt.

            Whether  to  print accumulated information during a file transfer.
            The default is true.


       The following options may be given to cu.

       -e, --parity=even
            Use even parity.

       -o, --parity=odd
            Use odd parity.

            Use no parity.  No parity is also used  if  both  -e  and  -o  are

       -h, --halfduplex
            Echo characters locally (half-duplex mode).

            Turn off XON/XOFF handling (it is on by default).

       -E char, --escape char
            Set  the escape character.  Initially ~ (tilde).  To eliminate the
            escape character, use -E ’’.

       -z system, --system system
            The system to call.

       -c phone-number, --phone phone-number
            The phone number to call.

       -p port, --port port
            Name the port to use.

       -a port
            Equivalent to --port port.

       -l line, --line line
            Name the line to use by giving a device name.  This may be used to
            dial  out  on  ports that are not listed in the UUCP configuration
            files.  Write access to the device is required.

       -s speed, --speed speed
            The speed (baud rate) to use.

       -#   Where # is a number, equivalent to --speed #.

       -n, --prompt
            Prompt for the phone number to use.

       -d   Enter debugging mode.  Equivalent to --debug all.

       -x type, --debug type
            Turn on particular  debugging  types.   The  following  types  are
            recognized:  abnormal,  chat,  handshake, uucp-proto, proto, port,
            config, spooldir, execute,  incoming,  outgoing.   Only  abnormal,
            chat,   handshake,   port,   config,  incoming  and  outgoing  are
            meaningful for cu.

            Multiple types may be given, separated by commas, and the  --debug
            option  may  appear  multiple  times.  A number may also be given,
            which will turn on that many types from the  foregoing  list;  for
            example,   --debug  2  is  equivalent  to  --debug  abnormal,chat.
            --debug all may be used to turn on all debugging options.

       -I file, --config file
            Set configuration file to use.  This option may not be  available,
            depending upon how cu was compiled.

       -v, --version
            Report version information and exit.

            Print a help message and exit.


       This program does not work very well.


       Ian Lance Taylor <>

                               Taylor UUCP 1.07                          cu(1)