Сценарии командной оболочки. Linux, OS X и Unix

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Сценарии командной оболочки помогают системным администраторам и программистам автоматизировать рутинные задачи с тех самых пор, как появились первые компьютеры. С момента выхода первого издания этой книги в 2004 году многое изменилось, однако командная оболочка bash только упрочила свои лидирующие позиции. Поэтому умение использовать все ее возможности становится насущной необходимостью для системных администраторов, инженеров и энтузиастов. В этой книге описываются типичные проблемы, с которыми можно столкнуться, например, при сборке программного обеспечения или координации действий других программ. А решения даются так, что их легко можно взять за основу и экстраполировать на другие схожие задачи. Цель этой книги - продемонстрировать практические приемы программирования сценариев на bash и познакомить с самыми распространенными утилитами на коротких и компактных примерах, не вдаваясь в излишние подробности. Экспериментируйте с этими сценариями - ломайте, исправляйте и приспосабливайте их под свои нужды, чтобы понять, как они работают. Только так вы сможете решать самые сложные задачи. https://nostarch.com/download/WickedCoolShellScripts2e_resources_updated.zip

Author(s): Дейв Тейлор, Брендон Перри
Series: Для профессионалов
Edition: 2
Publisher: Питер
Year: 2017

Language: Russian
Pages: 448
City: СПб.

Краткое содержание
Оглавление
Введение
Что исчезло во втором издании
Эта книга для вас, если...
Структура книги
Ресурсы в сети
В заключение
Глава 0. Краткое введение в сценарии командной оболочки
Что такое командная оболочка?
Запуск команд
Настройка оболочки входа
Запуск сценариев командной оболочки
Упрощение способа вызова сценариев
Почему именно сценарии командной оболочки?
За дело
Глава 1. Отсутствующая библиотека
Что такое POSIX?
№ 1. Поиск программ в PATH
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 2. Проверка ввода: только алфавитно-цифровые символы
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 3. Нормализация форматов дат
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 4. Удобочитаемое представление больших чисел
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 5. Проверка ввода: целые числа
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 6. Проверка ввода: вещественные числа
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 7. Проверка форматов дат
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 8. Улучшение некачественных реализаций echo
Код
Запуск сценария
Результаты
Усовершенствование сценария
№ 9. Вычисления произвольной точности с вещественными числами
Код
Как это работает
Запуск сценария
Результаты
№ 10. Блокировка файлов
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 11. ANSI-последовательности управления цветом
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 12. Создание библиотечных сценариев
Код
Как это работает
Запуск сценария
Результаты
№ 13. Отладка сценариев
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 2. Усовершенствование пользовательских команд
№ 14. Форматирование длинных строк
Код
Как это работает
Запуск сценария
Результаты
№ 15. Резервное копирование файлов при удалении
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 16. Работа с архивом удаленных файлов
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 17. Журналирование операций удаления файлов
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 18. Вывод содержимого каталогов
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 19. Поиск файлов по именам
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 20. Имитация других окружений: MS-DOS
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 21. Вывод времени в разных часовых поясах
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 3. Создание утилит
№ 22. Утилита для напоминания
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 23. Интерактивный калькулятор
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 24. Преобразование температур
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 25. Вычисление платежей по кредиту
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 26. Слежение за событиями
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 4. Тонкая настройка Unix
№ 27. Вывод содержимого файлов с нумерацией строк
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 28. Перенос длинных строк
Код
Как это работает
Запуск сценария
Результаты
№ 29. Вывод файла с дополнительной информацией
Код
Как это работает
Запуск сценария
Результаты
№ 30. Имитация флагов в стиле GNU с помощью quota
Код
Как это работает
Запуск сценария
Результаты
№ 31. Делаем sftp более похожей на ftp
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 32. Исправление grep
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 33. Работа со сжатыми файлами
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 34. Гарантия максимальной степени сжатия файла
Код
Как это работает
Запуск сценария
Результаты
Глава 5. Системное администрирование: управление пользователями
№ 35. Анализ использования дискового пространства
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 36. Уведомление о превышении квоты дискового пространства
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 37. Увеличение удобочитаемости вывода команды df
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 38. Определение доступного пространства на диске
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 39. Реализация защищенной команды locate
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 40. Добавление пользователей в систему
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 41. Приостановка действия учетной записи
Код
Как это работает
Запуск сценария
Результаты
№ 42. Удаление учетной записи
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 43. Проверка пользовательского окружения
Код
Как это работает
Запуск сценария
Результаты
№ 44. Очистка гостевой учетной записи
Код
Как это работает
Запуск сценария
Результаты
Глава 6. Системное администрирование: обслуживание системы
№ 45. Слежение за программами с атрибутом setuid
Код
Как это работает
Запуск сценария
Результаты
№ 46. Установка системной даты
Код
Как это работает
Запуск сценария
Результаты
№ 47. Завершение процессов по имени
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 48. Проверка записей в пользовательских файлах crontab
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 49. Запуск заданий cron вручную
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 50. Ротация файлов журналов
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 51. Управление резервными копиями
Код
Как это работает
Запуск сценария
Результаты
№ 52. Резервное копирование каталогов
Код
Как это работает
Запуск сценария
Результаты
Глава 7. Пользователи Интернета
№ 53. Загрузка файлов через FTP
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 54. Извлечение адресов URL из веб-страницы
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 55. Получение информации о пользователе GitHub
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 56. Поиск по почтовому индексу
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 57. Поиск по телефонному коду города
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 58. Слежение за погодой
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 59. Поиск информации о кинофильме в базе IMDb
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 60. Пересчет валют по курсу
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 61. Извлечение информации об адресе Биткоин
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 62. Определение изменений в веб-страницах
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 8. Инструменты веб-мастера
Запуск сценариев из этой главы
№ 63. Обзор CGI-окружения
Код
Как это работает
Запуск сценария
Результаты
№ 64. Журналирование веб-событий
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 65. Динамическое конструирование веб-страниц
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 66. Превращение веб-страниц в электронные письма
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 67. Создание веб-ориентированного фотоальбома
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 68. Отображение случайного текста
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 9. Администрирование веб-сервера
№ 69. Выявление недействительных внутренних ссылок
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 70. Выявление недействительных внешних ссылок
Код
Как это работает
Запуск сценария
Результаты
№ 71. Управление паролями в Apache
Код
Как это работает
Операции с файлом .htpasswd
Нижний колонтитул с полями ввода для выполнения операций
Запуск сценария
Результаты
Усовершенствование сценария
№ 72. Синхронизация файлов с помощью SFTP
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 10. Администрирование интернет-сервера
№ 73. Исследование журнала access_log веб-сервера Apache
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 74. Трафик поисковых систем
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 75. Исследование журнала error_log веб-сервера Apache
Код
Как это работает
Запуск сценария
Результаты
№ 76. Предотвращение катастрофических последствий с использованием удаленного архива
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 77. Мониторинг состояния сети
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 78. Изменение приоритета процесса по его имени
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 11. Сценарии для OS X
№ 79. Автоматизация захвата изображения экрана
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 80. Динамическая настройка заголовка терминала
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 81. Создание суммарного списка медиатек iTunes
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 82. Исправление команды open
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 12. Сценарии для игр и развлечений
№ 83. Декодирование: игра в слова
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 84. Виселица: угадай слово, пока не поздно
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 85. Угадай столицу
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 86. Является ли число простым?
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 87. Игральные кости
Код
Как это работает
Запуск сценария
Усовершенствование сценария
№ 88. «Раз-два»
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 13. Работа в облаке
№ 89. Поддержание непрерывной работы Dropbox
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 90. Синхронизация с Dropbox
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 91. Создание слайд-шоу из фотопотока в облаке
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 92. Синхронизация файлов с Google Drive
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 93. Компьютер сказал...
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 14. ImageMagick и обработка графических файлов
№ 94. Интеллектуальный анализатор размеров изображений
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 95. Добавление водяных знаков в изображения
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 96. Добавление рамок вокруг изображений
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 97. Создание миниатюр изображений
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 98. Интерпретация информации геопозиционирования GPS
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
Глава 15. Дни и даты
№ 99. Определение дня недели в указанную дату в прошлом
Код
Как это работает
Запуск сценария
Усовершенствование сценария
№ 100. Вычисление дней между датами
Код
Как это работает
Запуск сценария
Усовершенствование сценария
№ 101. Вычисление дней до указанной даты
Код
Как это работает
Запуск сценария
Усовершенствование сценария
Приложение A. Установка Bash в Windows 10
Переключение в режим для разработчика
Установка bash
Командная оболочка bash от Microsoft в сравнении с Linux
Приложение Б. Дополнительные сценарии
№ 102. Массовое переименование файлов
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 103. Массовое выполнение команд в многопроцессорной системе
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария
№ 104. Определение фазы Луны
Код
Как это работает
Запуск сценария
Результаты
Усовершенствование сценария