Пример: передача текстовых строк между клиентом и сервером Изменим наш сервер так, чтобы он, по-прежнему принимая текстовую строку от клиента, предполагал, что строка содержит два целых числа, разделенных пробелом, и возвращал сумму этих чисел. Функции main наших клиента и
Пример: передача двоичных структур между клиентом и сервером Теперь мы изменим код клиента и сервера, чтобы передавать через сокет не текстовые строки, а двоичные значения. Мы увидим, что клиент и сервер работают некорректно, когда они запущены на узлах с различным
23.2.5 Echo Request и Echo Reply Сообщения Echo Request (эхо-запрос) и Echo Reply (эхо-ответ) имеют формат, как и в версии 4, но для запроса используется тип = 128, а для ответа тип =
Пример 3-1. Вложенные блоки и перенаправление ввода-вывода #!/bin/bash# Чтение строк из файла /etc/fstab.File=/etc/fstab{read line1read line2} < $Fileecho "Первая строка в $File :"echo "$line1"echoecho "Вторая строка в $File :"echo "$line2"exit
Пример 9-4. Ограничение времени ожидания команды read #!/bin/bash# t-out.sh TIMELIMIT=4 # 4 секундыread -t $TIMELIMIT variable <&1echoif [ -z "$variable" ]then echo "Время ожидания истекло."else echo "variable = $variable"fi exit 0$UIDuser id numberUID (идентификатор) текущего пользователя, в соответствии с /etc/passwdЭто реальный UID текущего
Пример 10-22. Передача управление в начало внешнего цикла #!/bin/bash# Команда "continue N" передает управление в начало внешнего цикла, отстоящего от текущего на N уровней.for outer in I II III IV V # внешний циклdo echo; echo -n "Группа $outer: " for inner in 1 2 3 4 5 6 7 8 9 10 # вложенный цикл do if [ "$inner" -eq 7 ] then
Пример 11-4. Ввод многострочного текста с помощью read #!/bin/bashechoecho "Введите строку, завершающуюся символом , и нажмите ENTER."echo "Затем введите вторую строку, и снова нажмите ENTER."read var1 # При чтении, символ "" экранирует перевод строки. # первая строка # вторая
Пример 11-6. Чтение командой read из файла через перенаправление #!/bin/bashread var1 <data-fileecho "var1 = $var1"# Первая строка из "data-file" целиком записывается в переменную var1read var2 var3 <data-fileecho "var2 = $var2 var3 = $var3"# Обратите внимание!# Поведение команды "read" далеко от ожидаемого!# 1) Произошел возврат
Пример 17-7. Передача пары файлов во входящий каталог на "Sunsite" #!/bin/bash# upload.sh# Передача пары файлов (Filename.lsm, Filename.tar.gz)# на Sunsite (ibiblio.org).E_ARGERROR=65if [ -z "$1" ]then echo "Порядок использования: `basename $0` filename" exit $E_ARGERRORfiFilename=`basename $1` # Отсечь имя файла от пути к нему.Server="ibiblio.org"Directory="/incoming/Linux"#
Пример A-5. encryptedpw: Передача файла на ftp-сервер, с использованием пароля #!/bin/bash# Модификация примера "ex72.sh", добавлено шифрование пароля.# Обратите внимание: этот вариант все еще нельзя считать безопасным,#+ поскольку в сеть пароль уходит в незашифрованном виде.# Используйте
18.3.13. Передача параметров сценария системной команде Позиционные параметры можно передать сценарию, а затем проверить значение переменной. Если при этом пользователь указывает после названия сценария наименование каталога, сценарий заново присваивает специальному