Командная строка Linux и сценарии оболочки
Ричард Блум, Кристина Бреснахэн
Исчерпывающее руководство для освоения команд и командных интерпретаторов Linux!
В этой книге вы найдете все, что необходимо для освоения строковых команд и сценариев командных интерпретаторов Linux новичками и даже опытными разработчиками. Широким набором команд и средств упрощения работы, которые нелегко обнаружить самостоятельно во многих дистрибутивах Linux с интерфейсом рабочего стола, сумеют воспользоваться даже те пользователи, которые применяют систему Linux в собственных интересах. Но самое главное, это руководство включает весьма обширный массив практически применимых, удобных сценариев для опытных пользователей. С его помощью читатель быстро получит возможность автоматизировать фактически любую задачу в системе Linux.
Это новое пересмотренное и дополненное издание еще больше наполнено полезной информацией. В нем вы найдете все, что необходимо для освоения строковых команд и сценариев командных интерпретаторов Linux новичками и даже опытными разработчиками. Широким набором команд и средств упрощения работы, которые нелегко обнаружить самостоятельно во многих дистрибутивах Linux с интерфейсом рабочего стола, сумеют воспользоваться даже те пользователи, которые применяют систему Linux в собственных интересах. Но самое главное, это руководство включает весьма обширный массив практически применимых, удобных сценариев для опытных пользователей. С его помощью читатель быстро получит возможность автоматизировать фактически любую задачу в системе Linux.
С помощью этой книги читатель сможет достичь следующего.
- Работать в командной строке и запоминать основные команды командного интерпретатора
- Писать сценарии командного интерпретатора для автоматизации широко применяемых функций и отчетов
- Контролировать способ и время выполнения сценариев командного интерпретатора в системе
- Применять усовершенствованные методы управления данными в сценариях
- Приспосабливать сценарии для среды графических рабочих столов и для других командных интерпретаторов Linux
- Извлекать данные из страниц веб-сайтов и передавать данные из одной системы в другую
- Создавать сценарии командного интерпретатора профессионального качества для использования на практике
Ричард Блум работал в ИТ-индустрии свыше 22 лет в качестве системного и сетевого администратора. Он занимался администрированием серверов UNIX, Linux, Novell и Microsoft, обеспечивал автоматизацию мониторинга сети с помощью сценариев командного интерпретатора Linux, а также разрабатывал другие необходимые сценарии для большинства широко применяемых командных интерпретаторов Linux. Перу Ричарда принадлежат несколько книг, включая Professional Linux Programming (Wrox).
Кристина Бреснахэн работала с компьютерами на протяжении более 25 лет в качестве администратора ИТ-систем. Она занимает должность адъюнкт-профессора колледжа Ivy Tech Community в Индианаполисе, шт. Индиана и ведет курсы по системному администрированию Linux, безопасности Linux и безопасности Windows.
Издательство: Диалектика, 2-е издание, 2012 г.
ISBN 978-5-8459-1780-5
Количество страниц: 784.
Содержание книги «Командная строка Linux и сценарии оболочки»:
- 19 Посвящение
- 20 Об авторах
- 20 О техническом редакторе
- 21 Благодарности
- 22 ВВЕДЕНИЕ
- 22 Для кого предназначена книга
- 23 Структура книги
- 24 Принятые соглашения и обозначения
- 25 Минимальные требования
- 25 Направления дальнейшей работы
- 27 ЧАСТЬ I. КОМАНДНАЯ СТРОКА LINUX
- 28 ГЛАВА 1. Основные сведения о командных интерпретаторах Linux
- 28 Что такое Linux
- 29 Изучение ядра Linux
- 37 Программы GNU
- 39 Среда рабочего стола Linux
- 45 Дистрибутивы Linux
- 46 Основные дистрибутивы Linux
- 48 Дистрибутивы Linux категории LiveCD
- 49 Резюме
- 28 Что такое Linux
- 51 ГЛАВА 2. Получение доступа к командному интерпретатору
- 51 Эмуляция терминала
- 52 Графические возможности
- 57 Клавиатура
- 58 База данных terminfo
- 61 Консоль Linux
- 63 Терминал xterm
- 63 Параметры командной строки
- 65 Главное меню параметров xterm (Main Options)
- 68 Меню параметров VT (VT Options)
- 70 Меню шрифтов VT (VT Fonts)
- 72 Терминал Konsole
- 72 Параметры командной строки
- 73 Сеансы окон с вкладками
- 74 Профили
- 75 Строка меню
- 80 Терминал GNOME
- 80 Параметры командной строки
- 81 Вкладки
- 83 Строка меню
- 86 Резюме
- 51 Эмуляция терминала
- 87 ГЛАВА 3. Основные команды интерпретатора bash
- 87 Запуск командного интерпретатора
- 89 Приглашение к вводу информации командного интерпретатора
- 91 Руководство по командам bash
- 92 Навигация в файловой системе
- 92 Файловая система Linux
- 95 Переход по каталогам
- 96 Листинги файлов и каталогов
- 97 Основной формат листинга
- 99 Изменение формата представленной информации
- 100 Полный список параметров
- 102 Фильтрация вывода листинга
- 103 Обработка файлов
- 103 Создание файлов
- 104 Копирование файлов
- 106 Формирование ссылок на файлы
- 107 Переименование файлов
- 108 Удаление файлов
- 109 Обработка каталогов
- 110 Создание каталогов
- 110 Удаление каталогов
- 111 Просмотр содержимого файла
- 111 Просмотр статистических данных файла
- 112 Просмотр типа файла
- 112 Просмотр всего файла
- 116 Просмотр частей файла
- 117 Резюме
- 119 ГЛАВА 4. Дальнейшее описание команд интерпретатора bash
- 119 Отслеживание работы программ
- 120 Контроль над функционированием процессов
- 127 Отслеживание процессов в реальном времени
- 130 Останов процессов
- 132 Контроль над использованием места на диске
- 132 Монтирование носителей информации
- 136 Использование команды df
- 137 Использование команды du
- 138 Работа с файлами данных
- 138 Сортировка данных
- 142 Поиск данных
- 144 Сжатие данных
- 147 Архивирование данных
- 149 Резюме
- 119 Отслеживание работы программ
- 150 ГЛАВА 5. Использование переменных среды Linux
- 150 Общее описание переменных среды
- 151 Глобальные переменные среды
- 153 Локальные переменные среды
- 155 Задание переменных среды
- 156 Задание локальных переменных среды
- 157 Задание глобальных переменных среды
- 158 Удаление переменных среды
- 159 Заданные по умолчанию переменные среды командного интерпретатора
- 163 Задание переменной среды PATH
- 164 Поиск системных переменных среды
- 165 Командный интерпретатор для входа в систему
- 168 Интерактивный командный интерпретатор
- 171 Неинтерактивный командный интерпретатор
- 171 Массивы переменных
- 173 Использование псевдонимов команд
- 174 Резюме
- 150 Общее описание переменных среды
- 175 ГЛАВА 6. Основные сведения о правах доступа к файлам Linux
- 175 Безопасность Linux
- 176 Файл /etc/passwd
- 178 Файл /etc/shadow
- 179 Добавление нового пользователя
- 182 Удаление пользователя
- 182 Изменение пользователя
- 186 Использование групп Linux
- 186 Файл /etc/group
- 187 Создание новых групп
- 188 Внесение изменений в группы
- 188 Общие сведения о правах доступа к файлам
- 189 Использование символов для определения прав доступа к файлам
- 190 Заданные по умолчанию права доступа к файлу
- 192 Изменение параметров безопасности
- 192 Изменение разрешений
- 194 Изменение прав владения
- 195 Обеспечение совместного использования файлов
- 197 Резюме
- 175 Безопасность Linux
- 199 ГЛАВА 7. Управление файловыми системами
- 199 Общие сведения о файловых системах Linux
- 200 Основные файловые системы Linux
- 201 Файловые системы с ведением журнала
- 202 Расширенные файловые системы Linux с ведением журнала
- 204 Работа с файловыми системами
- 205 Создание разделов
- 208 Создание файловой системы
- 209 Устранение нарушений в работе
- 211 Диспетчеры логических томов
- 211 Организация управления логическими томами
- 212 Применение программы LVM в системе Linux
- 214 Использование Linux LVM
- 219 Резюме
- 199 Общие сведения о файловых системах Linux
- 221 ГЛАВА 8. Установка программного обеспечения
- 221 Общие сведения об управлении пакетами
- 222 Системы на основе Debian
- 223 Управление пакетами с помощью команды aptitude
- 225 Установка пакетов программ с помощью инструмента aptitude
- 227 Обновление программного обеспечения с помощью команды aptitude
- 228 Удаление программного обеспечения с помощью команды aptitude
- 229 Репозитарии aptitude
- 231 Системы на основе Red Hat
- 231 Получение списка установленных пакетов
- 233 Установка программного обеспечения с помощью yum
- 234 Обновление программного обеспечения с помощью yum
- 234 Удаление программного обеспечения с помощью yum
- 235 Возобновление нормальной работы при обнаружении нарушенных зависимостей
- 236 Репозитарии yum
- 237 Установка из исходного кода
- 241 Резюме
- 242 ГЛАВА 9. Работа с редакторами
- 242 Редактор vim
- 243 Основные сведения о редакторе vim
- 245 Редактирование данных
- 246 Копирование и вставка
- 246 Поиск и замена
- 247 Редактор emacs
- 248 Работа с редактором emacs на терминале
- 253 Использование редактора emacs в среде X Window
- 254 Семейство редакторов KDE
- 255 Редактор KWrite
- 259 Редактор Kate
- 261 Редактор GNOME
- 262 Запуск программы gedit
- 263 Основные средства gedit
- 264 Задание параметров
- 267 Резюме
- 242 Редактор vim
- 269 ЧАСТЬ II. ОСНОВЫ РАБОТЫ СО СЦЕНАРИЯМИ
- 270 ГЛАВА 10. Основы создания сценариев
- 270 Использование нескольких команд
- 271 Создание файла сценария
- 273 Отображение сообщений
- 275 Использование переменных
- 275 Переменные среды
- 276 Пользовательские переменные
- 278 Обратная одинарная кавычка
- 279 Перенаправление ввода и вывода
- 280 Перенаправление вывода
- 280 Перенаправление ввода
- 282 Каналы
- 284 Выполнение математических вычислений
- 285 Команда expr
- 287 Использование квадратных скобок
- 288 Способы выполнения вычислений с плавающей запятой
- 292 Выход из сценария
- 292 Проверка статуса выхода
- 293 Команда exit
- 295 Резюме
- 297 ГЛАВА 11. Использование структурирован ных команд
- 298 Работа с инструкцией if-then
- 300 Инструкция if-then-else
- 301 Уровень вложенности инструкций if
- 301 Команда test
- 302 Сравнение чисел
- 304 Сравнение строк
- 309 Сравнение файлов
- 314 Проверка того, предназначен ли файл для выполнения
- 315 Проверка права владения
- 317 Проверка с помощью составных условий
- 318 Дополнительные средства инструкции if-then
- 318 Применение двойных круглых скобок
- 319 Использование двойных квадратных скобок
- 320 Команда case
- 322 Резюме
- 323 ГЛАВА 12. Продолжение описания структурированных команд
- 323 Команда for
- 324 Чтение значений в списке
- 325 Чтение сложных значений в списке
- 327 Чтение списка из переменной
- 328 Чтение значений из команды
- 329 Изменение значения разделителя полей
- 330 Чтение каталога с использованием символов-заместителей
- 332 Команда for в стиле языка C
- 333 Команда for в стиле языка C
- 334 Использование нескольких переменных
- 335 Команда while
- 335 Основной формат while
- 336 Использование нескольких команд test
- 338 Команда until
- 339 Уровень вложенности циклов
- 341 Организация циклов на основе данных файла
- 343 Управление циклом
- 343 Команда break
- 346 Команда continue
- 349 Обработка вывода в цикле
- 350 Резюме
- 323 Команда for
- 352 ГЛАВА 13. Обработка ввода данных пользователем
- 352 Параметры командной строки
- 353 Чтение параметров
- 355 Чтение имени программы
- 356 Проверка параметров
- 357 Специальные переменные параметров
- 357 Подсчет параметров
- 359 Захват всех данных
- 361 Применение сдвига
- 362 Работа с опциями
- 362 Поиск опций
- 366 Использование команды getopt
- 369 Дополнительные возможности команды getopts
- 371 Стандартизация параметров
- 372 Получение ввода данных от пользователя
- 372 Основные способы чтения данных
- 374 Выход по тайм-ауту
- 375 Чтение данных без повтора на экране
- 376 Чтение из файла
- 377 Резюме
- 352 Параметры командной строки
- 379 ГЛАВА 14. Представление данных
- 379 Основные сведения о вводе и выводе
- 380 Стандартные дескрипторы файлов
- 382 Перенаправление вывода сообщений об ошибках
- 384 Перенаправление вывода в сценариях
- 384 Временные перенаправления
- 385 Постоянные перенаправления
- 386 Перенаправление ввода в сценариях
- 387 Создание собственного перенаправления
- 387 Создание дескрипторов выходных файлов
- 388 Перенаправление дескрипторов файлов
- 389 Создание дескрипторов входных файлов
- 390 Создание дескриптора файла для чтения-записи
- 391 Закрытие дескрипторов файлов
- 392 Получение перечня открытых дескрипторов файлов
- 394 Подавление вывода команды
- 395 Использование временных файлов
- 395 Создание локального временного файла
- 396 Создание временного файла в каталоге /tmp
- 397 Создание временного каталога
- 398 Ведение журналов сообщений
- 399 Резюме
- 379 Основные сведения о вводе и выводе
- 401 ГЛАВА 15. Управление сценариями
- 401 Обработка сигналов
- 402 Дополнительные сведения о сигналах Linux
- 402 Выработка сигналов
- 404 Перехват сигналов
- 405 Перехват команды выхода из сценария
- 406 Удаление ловушки
- 407 Выполнение сценариев в фоновом режиме
- 407 Выполнение в фоновом режиме
- 408 Выполнение нескольких низкоприоритетных заданий
- 409 Выход из терминального сеанса
- 410 Выполнение сценариев без привязки к консоли
- 411 Управление заданиями
- 411 Просмотр заданий
- 413 Возобновление выполнения остановленных заданий
- 414 Определение приоритета процесса
- 414 Команда nice
- 415 Команда renice
- 416 Выполнение в заданное время
- 416 Планирование заданий с использованием команды at
- 420 Планирование регулярного выполнения сценариев
- 423 Запуск с момента загрузки
- 423 Запуск сценариев во время начальной загрузки
- 426 Запуск при открытии нового сеанса работы с командным интерпретатором
- 426 Резюме
- 401 Обработка сигналов
- 429 ЧАСТЬ III. УСОВЕРШЕНСТВОВАННЫЕ СЦЕНАРИИ КОМАНДНОГО ИНТЕРПРЕТАТОРА
- 430 ГЛАВА 16. Создание функций
- 430 Основные сведения о применении функций в сценариях
- 431 Создание функции
- 431 Использование функций
- 434 Возврат значения
- 434 Статус выхода, заданный по умолчанию
- 435 Использование команды return
- 436 Использование вывода из функции
- 437 Использование переменных в функциях
- 437 Передача параметров в функцию
- 439 Обработка переменных в функции
- 442 Переменные типа массива и функции
- 442 Передача массивов в функции
- 443 Возврат массивов из функций
- 444 Рекурсивный вызов функций
- 446 Создание библиотеки
- 448 Использование функций в командной строке
- 448 Создание функций в командной строке
- 449 Определение функций в файле .bashrc
- 451 Резюме
- 430 Основные сведения о применении функций в сценариях
- 453 ГЛАВА 17. Написание сценариев для графических рабочих столов
- 453 Создание текстовых меню
- 454 Создание компоновки меню
- 455 Создание функций меню
- 456 Добавление средств организации работы меню
- 457 Соединение описанных компонентов в одном сценарии
- 458 Использование команды select
- 459 Организация работы по такому же принципу, как в Windows
- 460 Пакет dialog
- 466 Параметры команды dialog
- 468 Использование команды dialog в сценарии
- 470 Применение графического режима
- 471 Среда KDE
- 474 Среда GNOME
- 478 Резюме
- 453 Создание текстовых меню
- 480 ГЛАВА 18. Общие сведения о редакторах sed и gawk
- 480 Работа с текстом
- 481 Редактор sed
- 484 Программа gawk
- 490 Основные сведения о редакторе sed
- 490 Более подробное описание опций подстановки
- 492 Использование адресов
- 495 Удаление строк
- 497 Вставка и добавление текста
- 499 Внесение изменений в строки
- 500 Команда transform
- 501 Дополнительные сведения о формировании выходных данных
- 503 Использование файлов при работе с редактором sed
- 506 Резюме
- 480 Работа с текстом
- 507 ГЛАВА 19. Регулярные выражения
- 507 Общее определение понятия регулярного выражения
- 507 Определение
- 509 Типы регулярных выражений
- 509 Определение шаблонов BRE
- 509 Обычный текст
- 511 Специальные символы
- 512 Символы обозначения точек привязки
- 514 Символ точки
- 515 Классы символов
- 518 Обращение классов символов
- 518 Использование диапазонов
- 519 Специальные классы символов
- 520 Звездочка
- 521 Расширенные регулярные выражения
- 522 Вопросительный знак
- 522 Знак «плюс»
- 523 Использование фигурных скобок
- 524 Символ канала
- 525 Выражения группирования
- 526 Регулярные выражения в действии
- 526 Подсчет количества файлов в каталоге
- 527 Проверка правильности номера телефона
- 529 Синтаксический анализ адреса электронной почты
- 531 Резюме
- 507 Общее определение понятия регулярного выражения
- 532 ГЛАВА 20. Дополнительные сведения о редакторе sed
- 532 Многострочные команды
- 533 Команда next
- 536 Многострочная команда delete
- 537 Многострочная команда print
- 538 Пространство хранения
- 540 Обращение команды
- 542 Изменение потока управления
- 543 Выполнение перехода
- 544 Проверка
- 545 Замена шаблона
- 546 Амперсанд
- 546 Замена отдельных слов
- 548 Использование редактора sed в сценариях
- 548 Использование оболочек
- 549 Перенаправление вывода sed
- 549 Создание программ sed
- 549 Строки с двойными интервалами
- 550 Файлы с двойными интервалами, которые могут уже содержать пустые строки
- 551 Нумерация строк в файле
- 552 Вывод последних строк
- 553 Удаление строк
- 555 Удаление дескрипторов HTML
- 557 Резюме
- 532 Многострочные команды
- 559 ГЛАВА 21. Дополнительные сведения о редакторе gawk
- 559 Использование переменных
- 560 Встроенные переменные
- 565 Пользовательские переменные
- 567 Работа с массивами
- 568 Определение переменных с типом массива
- 568 Обработка переменных с типом массива в цикле
- 569 Удаление переменных с типом массива
- 570 Использование шаблонов
- 570 Регулярные выражения
- 571 Оператор сопоставления
- 572 Математические выражения
- 572 Структурированные команды
- 573 Оператор if
- 574 Инструкция while
- 576 Инструкция do-while
- 576 Инструкция for
- 577 Форматированный вывод
- 580 Встроенные функции
- 580 Математические функции
- 581 Строковые функции
- 583 Функции работы со временем
- 584 Определяемые пользователем функции
- 584 Определение функции
- 585 Использование собственных функций
- 585 Создание библиотеки функций
- 586 Резюме
- 559 Использование переменных
- 588 ГЛАВА 22. Работа с другими командными интерпретаторами
- 588 Общие сведения о командном интерпретаторе dash
- 590 Средства командного интерпретатора dash
- 590 Параметры командной строки командного интерпретатора dash
- 591 Переменные среды командного интерпретатора dash
- 594 Встроенные команды dash
- 595 Сценарная поддержка в командном интерпретаторе dash
- 595 Создание сценариев командного интерпретатора dash
- 596 Возможные причины возникновения нарушений в работе
- 601 Командный интерпретатор zsh
- 602 Компоненты командного интерпретатора zsh
- 602 Опции командного интерпретатора
- 606 Встроенные команды
- 611 Сценарная поддержка с помощью командного интерпретатора zsh
- 611 Математические выражения
- 613 Структурированные команды
- 613 Функции
- 616 Резюме
- 617 ЧАСТЬ IV. ДАЛЬНЕЙШЕЕ РАСШИРЕНИЕ СРЕДСТВ РАБОТЫ СО СЦЕНАРИЯМИ
- 618 ГЛАВА 23. Работа с базами данных
- 619 База данных MySQL
- 619 Установка MySQL
- 621 Клиентский интерфейс MySQL
- 625 Создание объектов базы данных MySQL
- 628 База данных PostgreSQL
- 628 Установка PostgreSQL
- 629 Интерфейс команд PostgreSQL
- 632 Создание объектов базы данных PostgreSQL
- 634 Работа с таблицами
- 634 Создание таблицы
- 636 Вставка и удаление данных
- 637 Выполнение запросов к данным
- 638 Использование базы данных в сценарии
- 639 Подключение к базе данных
- 641 Передача команд на сервер
- 644 Форматирование данных
- 646 Резюме
- 619 База данных MySQL
- 647 ГЛАВА 24. Работа в Интернете
- 647 Программа Lynx
- 648 Установка программы Lynx
- 649 Командная строка lynx
- 656 Файл конфигурации Lynx
- 657 Переменные среды Lynx
- 658 Перехват данных, поступающих из программы Lynx
- 661 Программа cURL
- 661 Установка программы cURL
- 661 Получение веб-ресурсов с помощью программы cURL
- 662 Работа в сети с помощью командного интерпретатора zsh
- 663 Модуль TCP
- 663 Подход на основе принципа «клиент/сервер»
- 664 Программирование «клиент/сервер» с применением командного интерпретатора zsh
- 668 Резюме
- 647 Программа Lynx
- 669 ГЛАВА 25. Использование электронной почты
- 669 Основы электронной почты Linux
- 670 Электронная почта в Linux
- 671 Агент пересылки сообщений
- 672 Агент доставки сообщений
- 673 Почтовый агент пользователя
- 677 Установка сервера
- 678 sendmail
- 680 Postfix
- 684 Отправка сообщений с помощью программы Mailx
- 687 Программа Mutt
- 687 Установка программы Mutt
- 688 Командная строка Mutt
- 689 Использование программы Mutt
- 690 Резюме
- 669 Основы электронной почты Linux
- 692 ГЛАВА 26. Написание программ на основе сценариев
- 692 Контроль над использованием места на диске
- 693 Обязательные функции
- 695 Создание сценария
- 697 Выполнение сценария
- 698 Выполнение резервного копирования
- 698 Архивирование файлов данных
- 705 Управление учетными записями пользователей
- 706 Обязательные функции
- 713 Создание сценария
- 720 Резюме
- 692 Контроль над использованием места на диске
- 721 ГЛАВА 27. Более сложные сценарии командного интерпретатора
- 721 Текущий контроль статистических данных системы
- 722 Отчет с моментальным снимком системы
- 729 Отчет со статистическими данными системы
- 737 Отслеживание проблем, связанных с базой данных
- 737 Создание базы данных
- 740 Регистрация проблемы
- 743 Обновление сведений о проблеме
- 749 Поиск проблемы
- 753 Резюме
- 721 Текущий контроль статистических данных системы
- 755 ПРИЛОЖЕНИЕ A. Краткое руководство по командам bash
- 755 Встроенные команды
- 757 Команды bash
- 759 Переменные среды
- 763 ПРИЛОЖЕНИЕ Б. Краткое руководство по программам sed и gawk
- 763 Редактор sed
- 763 Начало работы с редактором sed
- 764 Команды sed
- 768 Программа gawk
- 768 Формат команды gawk
- 769 Использование программы gawk
- 770 Переменные gawk
- 772 Средства программы gawk
- 763 Редактор sed
- 774 Предметный указатель
Инструкция как скачать книгу Ричард Блум, Кристина Бреснахэн: Командная строка Linux и сценарии оболочки в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.