Unix Man (Справочное руководство)

         

CU(1C)


CU(1C)

НАЗВАНИЕ


cu,tip - вызов другой UNIX-системы

СИНТАКСИС

cu [-sскорость_обмена] [-lлиния] [-h] [-t] [-d] [-o] [-e] [-n] номер_телефона cu [-sскорость_обмена] [-h] [-d] [-o] [-e] -lлиния cu [-h] [-d] [-o] [-e] имя_системы

ОПИСАНИЕ


Команда cu вызывает другую UNIX-систему, терминал или, возможно, не-UNIX-систему. Она поддерживает интерактивное взаимодействие с возможностью передачи текстовых файлов.

Допустимые опции:

-sскорость_обмена

Указание скорости обмена (300, 1200, 2400, 4800, 9600 бод). Подразумеваемое значение (обозначается Any) зависит от порядка строк в файле /usr/lib/uucp/Devices. Большинство модемов обеспечивают скорость 300 или 1200 бод. При прямом подключении можно задавать скорости большие, чем 1200 бод.

-lлиния

Указание имени устройства, которое будет использоваться в качестве коммунникационной линии. Служит для отмены поиска линии, имеющей подходящую скорость. При использовании опции -l без -s скорость обмена берется из файла /usr/lib/uucp/Devices. Если же эти опции используются одновременно, то cu просматривает файл /usr/lib/uucp/Devices для проверки - соответствует ли требуемая скорость характеристикам линии. Если да, то выполняется соединение с требуемой скоростью. В противном случае выдается сообщение об ошибке, и вызов не выполняется. Указываемое устройство, как правило, является подсоединяемой напрямую асинхронной линией (то есть /dev/ttyab); в этом случае задавать номера_телефона не нужно. Указанное устройство не обязано находиться в каталоге /dev. Если устройство ассоциировано с автоответчиком, то номер_телефона должен быть задан обязательно. При наличии опции -l или -s не стоит использовать опцию имя_системы вместо номера_телефона: к желаемому результату это не приведет (см. ниже имя_системы).

-h Эмуляция локального эхоотображения при вызове других систем, которые ожидают, что терминал находится в полудуплексном режиме.

-t Используется при вызове ASCII-терминала, подключенного через автоответчик. Устанавливается режим преобразования возврата каретки в пару (возврат каретки, переход к новой строке).

-d Выводить диагностическую трассировку.

-o Байты данных, пересылаемые на удаленную систему, дополняются до нечетности.

-e Байты данных, пересылаемые на удаленную систему, дополняются до четности.

-n Для большей секретности номер телефона запрашивается у пользователя, а не вводится из командной строки.

номер_телефона


При использовании автоматического номеронабирателя этот аргумент обозначает телефонный номер со знаками равенства в тех местах, где нужно дождаться ответного сигнала и знаками минус в местах, где надо сделать задержку на 4 секунды.

имя_системы

Имя_системы в смысле uucp может быть использовано вместо номера_телефона. В этом случае имя соответствующей прямой линии или номер_телефона будет получено из файла /usr/lib/uucp/Systems. Замечание: опцию имя_системы не следует использовать совместно с опциями -l и -s, так как cu произведет соединение первым доступным способом, игнорируя указание линии и скорости_обмена.

После установления связи cu разделяется на два процесса: передающий процесс читает данные со стандартного ввода и все строки, не начинающиеся с символа ~, передает удаленной системе; принимающий процесс получает данные от этой системы и, за исключением строк, начинающихся с символа ~, передает на стандартный вывод. Обычно автоматически поддерживается протокол Xon/Xoff для контроля ввода от удаленной системы, чтобы избежать переполнения буфера. Строки, начинающиеся с символа ~, трактуются по-особому.

Передающий процесс интерпретирует следующие команды, выданные пользователем:

~. Завершить диалог с удаленной системой.

~! Выйти в shell локальной системы.

~!команда...

Выполнить команду на локальной системе (посредством sh -c).

~$команда...

Выполнить команду локально и направить ее вывод на удаленную систему.

~%cd Сменить каталог на локальной системе. Примечание: команда выполняется специально запущенным shell'ом, что, возможно, не является желательным.

~%take откуда [куда]



Копировать файл откуда с удаленной системы в файл куда на локальной системе. Если часть куда опущена, то используется аргумент откуда.

~%put откуда [куда]

Копировать файл откуда с локальной системы в файл куда на удаленной системе. Если часть куда опущена, то используется аргумент откуда.

При работе обеих команд, %take и %put, по мере передачи блоков на терминал выводятся последовательные цифры.

~~строка



Послать ~строку на удаленную систему.

~%break

Передать на удаленную систему символ прерывания (можно сокращать до ~%b).

~%debug

Включить/выключить вывод отладочной информации (можно сокращать до ~%d).

~t Вывести значения компонентов структуры termio для пользовательского терминала (полезно для отладки).

~l Вывести значения компонентов структуры termio для коммуникационной линии (полезно для отладки).

~%nostop

Включить/выключить Xon/Xoff-протокол при вводе. Эта команда применяется в тех случаях, когда удаленная система не может правильным образом реагировать на символы CTRL+S и CTRL+Q.

Принимающий процесс обычно копирует данные, получаемые от удаленной системы, на свой стандартный вывод. Особым образом обрабатываются строки, начинающиеся с символа ~. Комбинация символов ~>:файл используется для переназначения стандартного вывода (комбинация ~>>: - для добавления информации). Восстановление стандартного вывода обеспечивает строка ~>.

При использовании команды ~%put ожидается, что на удаленной стороне доступны утилиты и . Ожидается также, что символы "забоя" последнего введенного символа и последней введенной строки на локальной и удаленной системах совпадают. В соответствующих местах вставлены символы \.

При использовании команды ~%take ожидается, что на удаленной стороне доступны утилиты и . Чтобы символы табуляции передавались без замены их пробелами, на удаленной системе должен быть установлен режим stty tabs.

Если команда cu была использована в системе X для связи с системой Y, а затем была использована в системе Y для связи с системой Z, команды на системе Y могут быть выполнены посредством команды ~~. Например, команда uname может быть выполнена на системах Z, X и Y следующим образом:

uname на Z ~[X]!uname на X ~~[Y]!uname на Y

Вообще, ~ означает, что команда будет исполнена на исходной машине, а ~~ - на следующей машине по цепочке вызовов.

ПРИМЕРЫ



  • Вызвать систему с номером 9 201 555 1212, используя скорость передачи 1200 бод, с ожиданием гудка после первой девятки:



    cu -s1200 9=2015551212

    Если скорость не указана, по умолчанию она принимается равной Any.
  • Подключиться к системе, доступной напрямую:

    cu -l /dev/tty10

    или

    cu -l tty10


  • Использовать имя системы:

    cu $NAME


  • ФАЙЛЫ



    /usr/lib/uucp/Systems /usr/lib/uucp/Devices /usr/spool/locks/LCK..линия

    СМ. ТАКЖЕ



    , , , , , .

    КОДЫ ЗАВЕРШЕНИЯ



    Нулевой код при нормальном завершении, единичный - в противном случае.

    ПРЕДОСТЕРЕЖЕНИЯ



    Команда cu не производит никакой проверки целостности пересылаемых данных. Данные, содержащие символы, имеющие для cu специальное значение, могут не быть переданы должным образом. В зависимость от оборудования, может являться необходимым использование ~. для завершения передачи даже если была выполнена команда stty 0. Нельзя быть уверенным в надежной передаче командами ~%put или ~%take управляющих символов. После установления соединения приглашение может появляться не сразу, а лишь после нажатия возврата каретки.

    СЮРПРИЗЫ



    Во время выполнения команды ~%put процесс передачи искусственно замедляется, чтобы уменьшить вероятность потери данных.


    Содержание раздела