Литература
- К. Кристиан. Введение в ОС UNIX. М., 1985. 318~с.
- Daniel Robbins. Linux Fundamentals (in English)*.
- Дэньэл Роббинс. Основы Linux (перевод В.Б.Титовым ресурса D. Robbins http://www.funtoo.org/Bash_by_Example,_Part_1)*.
- Владимир Игнатов. Эффективное использование GNU Make.
- Кофлер. Linux. Установка, настройка, администрирование. СПб.: Питер, 2014. 768~с.
*Перед разархивированием убрать из названия файла архива символы между "tar" и ".gz".
Учебные материалы
- Приемы повышения эффективности работы (для оболочки MATE, залы 2444, 2024 г.).
- Минимальные требования по курсу «ОС UNIX» (2024).
- Тренировочные задания по написанию скриптов (сценариев) оболочки bash.
Программа практических занятий
- 18.09.2025
Установочное занятие: изучение приемов повышения эффективности работы (см. ссылку на файл выше). Настройка рабочего места в зале 2444.
- 02.10.2025
Команды man, info; whoami, who, last; pwd; touch.
Команда ls с параметрами и без, со всеми ключами во всевозможных комбинациях. Исследование с ее помощью дерева директорий файловой системы.
Глобальные символы и шаблоны с командами ls и echo.
Команды cp, mv, rm. Упражнения на копирование и переименование директорий (обстоятельства, влияющие на результат: существует ли целевая директория, существует ли в целевой директории поддиректория с именем исходной директории, пуста ли эта поддиректория, какая команда (cp или mv) применяется, совпадают ли имена исходной и целевой директорий).
Упражнения на временные штампы в директории /tmp и в своей домашней директории: 1) проследить временные штампы при редактировании и просмотре файлов; 2) при использовании cp (с ключом -p и без) сравнить все три временных штампа у оригинального файла до и после применения команды и у файла-копии; 3) проверить, что будет с временными штампами при переименовании (mv).
Команды работы с директориями: mkdir, cd, rmdir; dirs, pushd, popd.
- 09.10.2025
Вьюеры (cat, more, less, mcview), система команд less; упражнения по контекстному поиску в листинге man.
Новые специальные символы: ; $ {,}. Отмена специального значения символов: \, кавычки ' ' и " ".
Командная подстановка: старый (кавычки ` `) и новый стили, гнездование (повторное и кратное применение командной подстановки).
Команда grep, регулярные выражения.
- 16.10.2025
Команда sort. Совместное применение sort и ls -l: использование ключа сортировки -k. Сортировка с учетом всех символов: LC_ALL=C sort.
Команда find с отдельными ключами и комбинациями ключей, построение логических выражений с ключом -a и скобками \( \). Использование find в виде командной подстановки в команде ls; применение `pwd` при работе с find, пример гнездования при совместном использовании ls, find и pwd.
Команда chmod. Тестовые упражнения на изменение прав доступа. Настроить права доступа к своей домашней директории!
Линки: создание и работа с жесткими и мягкими линками. Мягкие линки в / и /dev. Создание цепей линков.
Команды diff, tail, head, wc, file.
- 30.10.2025
Работа с устройствами, имеющими файловую систему: команды mount, dmesg, eject и df.
Команда du [-sh].
Средства оболочки на специальных клавишах клавиатуры. Завершение (completion); история команд, C-r; листание
выдачи на терминал ([Shift]-[PgUp], [Shift]-[PgDn]). Команды редактирования командной строки: C-a, C-e, M-f
(C-[—>]), M-b (C-[<—]), C-k, C-u, M-d, M-[Backspace], C-y, C-_.
Переадресация ввода-вывода. Стандартные устройства stdin, stdout, stderr и стандартный ввод-вывод.
Перенаправление (переадресация) ввода-вывода: операторы переадресации <, >, 2>, сдвоенные операторы >>, 2>>;
слияние stdout и stderr с перенаправлением в файл &> и перенаправление stderr в stdout без обязательного
перенаправления в файл 2>&1. Конвейер (|). Встроенные документы (<<). Чтение аргументов со stdin: команда xargs.
Устройство /dev/null.
Midnight commander. Настройка X-терминала для повышения эффективности работы в mc (см. "Приемы повышения
эффективности работы", п. 2). Общий стиль работы под mc: перемещения двух курсоров, F-клавиши, строка подсказки,
выделение списка файлов, [F9] — главное меню mc (другие команды и настройка). Отображение типов и других
атрибутов файлов: включение в залах 2444 (см. "Приемы...", п. 8). Англоизация mc. "Горячие клавиши": C-o; C-r;
M-p, M-n; [Esc],[Tab]; M-s; M-[Enter]; C-x,t; C-x,p (M-a), C-x,C-p; M-i; M-y, M-u; C-\ ("горячие директории");
M-t; [F9],c,c,t (детальное сравнение двух директорий); M-? (функции команд find и grep). Стандартные реакции на
расширения.
Переменные оболочки. Заведение переменных, способы ссылки на их значения. Нестандартное раскрытие переменной
(длина значения, удаление части значения переменной по шаблону, выделение подстроки). Команда export, cоздание
переменных в ~/.bash_profile. Присвоение значений для исполнения команды. Общий шаблон simple command. Команда
readonly. Переменные окружения. Команды set и unset. locale как приложение и команда.
Код завершения команды. Специальный параметр ?.
Команды test, true, false, expr, bc, date, sleep, eval.
- 30.10.2025
Отладка и модификации скрипта, написанного в аудитории: реакция на ошибки (отсутствие параметра, больше одного
параметра), синопсис, усложнения.
Команды cut, gawk, sed, paste, seq.
Последовательности команд. Работа с разделителями конвейеров в списке.
Скрипты, способы их выполнения.
Команда alias.
Структуры if, while, until, for, case; операторы прерывания continue, break, exit.
Написание тренировочных скриптов (см. п. "Тренировочные задания..." в разделе "Учебные материалы" выше на этой странице).


