直接或间接连接至另一个系统。
cu [ -d ] [ -h ] [ -m ] [ -TSeconds ] [ -n ] [ -sSpeed ] [ -t ] [ -e | -o ] TelephoneNumber
cu [ -d ] [ -h ] [ -m ] [ -TSeconds ] [ -sSpeed ] [ -e | -o ] -lLine
cu [ -d ] [ -h ] [ -m ] [ -TSeconds ] [ -e | -o ] SystemName
cu 命令是一个“基本联网实用程序”(BNU)命令,用来将连接至与 UNIX 或非 UNIX 系统的终端连接到一个系统上。连接可以通过硬接线或使用调制解调器通过电话线硬连线建立。
一旦连接建立,用户可以同时登录在两个系统上,可以在任意一个系统上执行命令而不断开 BNU 通信链接。如果远程计算机也是在 UNIX 下运行的,用户可以在两个系统之间传送 ASCII 文件。
从本地系统发出 cu 命令后,用户必须按下 Enter 键并随之登录到远程系统。建立连接后,cu 命令将以两个并发进程运行:传输进程从标准输入读取数据,以 ~ (代字符) 开头的行除外,将该数据发送至远程终端。
接收进程从远程系统接受数据且,除了 ~ 开头的行之外,将该数据发送至标准输出。在内部,该程序在遇到来自远程系统的以 ~>(代字符,大于) 开头的行时通过启动本地系统上的文件的输出转换而达到该目的。结尾的 ~> 标记了转换的结束。要控制来自远程系统的输入,使缓冲区不至于超限,cu 命令使用自动的 DC3/DC1(Ctrl-Q/Ctrl-S)协议。
cu 命令可以用来连接多个系统,命令可以随后在连接系统中的任何一个上执行。例如,用户可以在系统 X 上发出 cu 命令来连接至系统 Y,然后在系统 Y 上发出 cu 命令来连接至系统 Z。系统 X 那时就成为本地计算机,而系统 Y 和 Z 就是远程计算机。
用户可以通过登录并发出命令来在系统 Z 上执行命令。可以在系统 X 上执行命令,只要为该命令加上单独的代字符(~ 命令)作为前缀,在系统 Y 上执行命令,只要命令加上两个代字符作为前缀(~~ 命令)。一般,一个代字符使指定的命令在原始本地计算机上执行,而两个代字符使命令在 cu 命令在其上发出的下一个系统上执行。
例如,一旦连接了多个系统,用户就可以如下在系统 Z、X 和 Y 上执行 uname -n 命令(来显示节点名):
$ uname -n Z $ ~!uname -n X $ ~~!uname -n Y
注意:
除了可以在远程系统上发出常规命令外,用户还可以发出特殊的 cu 命令的子命令,它们由 ~ (代字符) 作为前导。使用这些子命令在本地系统上发出命令和执行任务,比如在两个 UNIX 系统之间传送文件。一旦用户输入了 ~!、~$、~%、~l 或 ~t 子命令,系统就将以类似于以下的格式显示本地计算机的名称:
~[SystemName]/%
用户随后在本地计算机上输入要执行的子命令。
-d | 打印诊断跟踪。 |
-e | 表示将为发送至远程系统的数据生成偶校验。 |
-h | 模拟本地回送信号,支持对期望终端设置为半双工方式的其它系统的调用。 |
-lLine | 指定要用作本地和远程系统之间的通信线路的设备的名称。这可以用来覆盖否则将发生在首个具有正确速度的可用线路上的搜索。当 -l 标志不与 -s 标志一起使用时,Line 的速度将从 Devices 文件中获取(缺省情况下,是 /etc/uucp/Devices 文件)。
当 -l 和 -s 标志一起使用时,cu 命令将搜索 Devices 文件来检查对于指定的线路请求的速度是否可用。如果可用,则以请求的速度建立连接;否则,打印一则错误消息,调用无法完成。 指定设备通常为硬连线异步线路(例如,/dev/tty2),在此情况下对 TelephoneNumber 参数不作要求。如果指定设备与调制解调器相连,则必须提供电话号码。将此标志与 SystemName 参数,而非 TelephoneNumber 参数一起使用将不会得出期望的结果。 在通常情况下,用户应不必要指定线路或设备的传输速度。安装 BNU 时的缺省设置应该足够满足要求。 |
-m | 指示 cu 命令忽略调制解调器控制信号数据载波检测(DCD)。 |
-n | 用于添加的安全性,提示用户提供要拨号的电话号码,而非从命令行获得号码。 |
-o | 表示将为发送至远程系统的数据生成奇校验。 |
-sSpeed | 指定数据传输至远程系统的速率(300、1200、2400、4800、9600 或 19200 波特)。缺省值为 Any 速度,指示系统使用与缺省(或指定)传输线路相应的速率。传输线路的顺序在 BNU Devices 文件中指定(缺省情况下,是 /etc/uucp/Devices 文件)。大多数调制解调器以 300、1200 或 2400 波特的速度运行,而大多数硬连线被设置在 1200 波特或更高的速度上。当在本地和远程系统之间传送数据,比如文件时,可能偶尔需要 300 波特的速度。较低的波特率将导致线路上较少的干扰。 |
-t | 用来对设置为自动应答的 ASCII 终端进行拨号。会设置相应的回车符至回车符换行对的映射。 |
-TSeconds | 指定超时前等待的秒数最大值。缺省值为 45 秒。
注:您也可以在 Dialers 文件中的任何发送字符串前输入 WAIT=n。其中 n 为超时前等待的秒数最大值。 |
SystemName | 远程系统的名称,由 BNU 识别,用来建立连接。可以使用系统名称而非电话号码;在此情况下,cu 命令将从 BNU Systems 文件(缺省情况下,为 /etc/uucp/Systems 文件)获得相应的硬连线或电话号码。系统名称必须仅为 ASCII 字符。
注:不要将 SystemName 标志与 -l 标志和 -s 标志一起使用。如果已这样做,cu 命令将连接至首个对请求的系统名称可用的线路,而忽略指定的线路和速度。 |
TelephoneNumber | 用来使用调制解调器建立远程连接的电话号码。该条目可以是本地或长途电话号码。 |
cu 命令传送进程以下述方式解释以 ~ (代字符) 开头的线路:
~! | 将用户返回至本地系统上的交互式 shell。使用 ~!(远程至本地)和 Ctrl-D(本地至远程)在本地和远程系统之间切换。 |
~%break | 传输中断顺序至远程系统。中断也可以指定为 ~%b。 |
~%cd DirectoryName | 将本地系统上的目录从当前目录更改至由 DirectoryName 变量指定的目录。 |
~%debug | 切换 -debug 标志开和关;这也可指定为 ~%d。 |
~%nostop | 在 DC3/DC1 输入控制协议和无控制协议之间切换。这在远程系统未能正确地响应 DC3 和 DC1 字符时会有用处。 |
~%put From [ To ] | 复制本地系统上的 From 文件至远程系统上的 To 文件。如果省略 To 变量,本地文件将以同样的文件名复制到远程系统上。在传送文件的每个块时,连续的单个数字将显示在终端屏幕上。只有 ASCII 文件能够使用该子命令进行传送。
使用 ~%put 子命令需要远程系统上的 stty 命令和 cat 命令。它还要求远程系统上当前的擦除和杀死字符与本地系统上的当前控制字符相同。反斜杠将被插入在传输数据的适当位置。在 ~%put 的操作过程中会由 cu 命令产生一个人为的传输减速,从而使数据丢失不易发生。 |
~%take From [ To ] | 复制远程系统上的 From 文件至本地系统上的 To 文件。如果省略 To 变量,远程文件将以同样的文件名复制到本地系统上。在传送文件的每个块时,连续的单个数字将显示在终端屏幕上。只有 ASCII 文件能够使用该子命令进行传送。使用 ~%take 子命令要求远程系统上的 echo 命令和 cat 命令。并且,如果要复制 tabs 而不扩展空格的话,应该在远程系统上设置 stty tabs 方式。 |
~. | 将用户从远程计算机上注销,然后终止远程连接。通常连接在您从远程计算机上注销时会被终止。然而,使用某些类型的互连硬件时,可能需要使用 ~. 来在使用正常的注销顺序后终止对话。 |
~!Command | (在本地系统上)执行由 Command 变量指定的命令。 |
~$Command | (在本地系统上)运行由 Command 变量指定的命令,然后将命令的输出发送至远程系统用以执行。 |
~l | 为远程通信线路打印 TERMIO 结构变量的值。这将对调试有用。 |
~t | 为用户终端打印 TERMIO 结构变量的值。这将对调试有用。 |
~~String | 将由 String 变量指定的字符串发送至远程系统。 |
以下是连接到远程系统的示例。
cu venus
在本示例中,您连接至远程系统 venus。系统 venus 必须列出在一个本地 Systems 文件(缺省情况下,为 /etc/uucp/Systems 文件或在 /etc/uucp/Sysfiles 文件中为 cu 命令列出的 Systems 文件之一)中。
/etc/locks | 防止多次使用设备。 |
/usr/bin/cu | 指定 cu 命令的路径名称。 |
/bin/cu | 指定到 /usr/bin/cu 命令的符号链路。 |
/etc/uucp/Devices | 包含有关可用链路的信息。 |
/etc/uucp/Dialcodes | 包含拨号代码缩写。 |
/etc/uucp/Dialers | 控制链路上的初始握手。 |
/etc/uucp/Permissions | 包含访问许可权代码。 |
/etc/uucp/Systems | 列出可访问的远程系统。 |
/etc/uucp/Sysfiles | 指定可用作 Systems、Devices 和 Dialers 文件的备用文件。 |
cat 命令、ct 命令、echo 命令、rmail 命令、stty 命令、uname 命令、uucp 命令、uuname 命令、uupick 命令、uustat 命令、uuto 命令、uux 命令。