-->

Операционная система UNIX

На нашем литературном портале можно бесплатно читать книгу Операционная система UNIX, Робачевский Андрей Михайлович-- . Жанр: ОС и Сети. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале bazaknig.info.
Операционная система UNIX
Название: Операционная система UNIX
Дата добавления: 16 январь 2020
Количество просмотров: 427
Читать онлайн

Операционная система UNIX читать книгу онлайн

Операционная система UNIX - читать бесплатно онлайн , автор Робачевский Андрей Михайлович

Книга посвящена семейству операционных систем UNIX и содержит информацию о принципах организации, идеологии и архитектуре, объединяющих различные версии этой операционной системы.

В книге рассматриваются: архитектура ядра UNIX (подсистемы ввода/вывода, управления памятью и процессами, а также файловая подсистема), программный интерфейс UNIX (системные вызовы и основные библиотечные функции), пользовательская среда (командный интерпретатор shell, основные команды и утилиты) и сетевая поддержка в UNIX (протоколов семейства TCP/IP, архитектура сетевой подсистемы, программные интерфейсы сокетов и TLI).

Для широкого круга пользователей.

 

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала

1 ... 19 20 21 22 23 24 25 26 27 ... 156 ВПЕРЕД
Перейти на страницу:

fi

Команды

<i>command1</i>
,
<i>command2</i>
и т.д. будут выполнены, если истинно
<i>условие</i>
. Условие может генерироваться одной или несколькими командами. По существу, ложность или истинность условия определяется кодом возврата последней выполненной команды. Например:

if grep sergey /etc/passwd &gt;/dev/null 2&gt;&amp;1

then

 echo пользователь sergey найден в файле паролей

fi

Если слово sergey будет найдено программой grep(1) в файле паролей (код возврата grep(1) равен 0), то будет выведено соответствующее сообщение.

Возможны более сложные формы оператора if.

set `who -r`

Установим позиционные параметры равными значениям полей вывода программы who(1)

if [ &quot;$9&quot; = &quot;S&quot; ]

Девятое поле вывода — предыдущий уровень выполнения системы; символ 'S' означает однопользовательский режим

then

 echo Система загружается

elif [ &quot;$7&quot; = &quot;2&quot; ]

Седьмое поле — текущий уровень

 echo Переход на уровень выполнения 2

else

 echo Переход на уровень выполнения 3

fi

Данный фрагмент скрипта проверяет уровень выполнения, с которого система совершила переход, и текущий уровень выполнения системы. Соответствующие сообщения выводятся на консоль администратора. В этом фрагменте условие генерируется командой test, эквивалентной (и более наглядной) формой которой является "[]". Команда test является наиболее распространенным способом генерации условия для оператора if.

Команда test

Команда test имеет следующий синтаксис:

test <i>выражение</i>

или

[ <i>выражение</i> ]

Команда вычисляет логическое выражение (табл. 1.10) и возвращает 0, если выражение истинно, и 1 в противном случае.

Таблица 1.10. Выражения, используемые в команде test

Выражения с файлами
-s <i>file</i>
Размер файла
<i>file</i>
больше 0
-r <i>file</i>
Для файла
<i>file</i>
разрешен доступ на чтение
-w <i>file</i>
Для файла
<i>file</i>
разрешен доступ на запись
-x <i>file</i>
Для файла
<i>file</i>
разрешено выполнение
-f <i>file</i>
Файл
<i>file</i>
существует и является обычным файлом
-d <i>file</i>
Файл
<i>file</i>
является каталогом
-с <i>file</i>
Файл
<i>file</i>
является специальным файлом символьного устройства
-b <i>file</i>
Файл
<i>file</i>
является специальным файлом блочного устройства
-р <i>file</i>
Файл
<i>file</i>
является поименованным каналом
-u <i>file</i>
Файл
<i>file</i>
имеет установленный флаг SUID
-g <i>file</i>
Файл
<i>file</i>
имеет установленный флаг SGID
-k <i>file</i>
Файл
<i>file</i>
имеет установленный флаг sticky bit
Выражения со строками
-z <i>string</i>
Строка
<i>string</i>
имеет нулевую длину
-n <i>string</i>
Длина строки
<i>string</i>
больше 0
<i>string1</i> = <i>string2</i>
Две строки идентичны
<i>string1</i> != <i>string2</i>
Две строки различны
Сравнение целых чисел
<i>i1</i> -eq <i>i2</i>
<i>i1</i>
равно
<i>i2</i>
<i>i1</i> -ne <i>i2</i>
<i>i1</i>
не равно
<i>i2</i>
<i>i1</i> -lt <i>i2</i>
<i>i1</i>
строго меньше
<i>i2</i>
<i>i1</i> -le <i>i2</i>
<i>i1</i>
меньше или равно
<i>i2</i>
<i>i1</i> -gt <i>i2</i>
<i>i1</i>
строго больше
<i>i2</i>
<i>i1</i> -ge <i>i2</i>
<i>i1</i>
больше или равно
<i>i2</i>
1 ... 19 20 21 22 23 24 25 26 27 ... 156 ВПЕРЕД
Перейти на страницу:
Комментариев (0)
название