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

539

Описание

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

1 страница из 77
читать на одной стр.
Настроики
A

Фон текста:

  • Текст
  • Текст
  • Текст
  • Текст

Шрифты

  • Аа

    Roboto

  • Аа

    Garamond

  • Аа

    Fira Sans

  • Аа

    Times

  • Аа

    Iowan

  • Аа

    San Francisco

  • Аа

    SF Serif

  • Аа

    New York

  • Аа

    Helvetica Neue

  • Аа

    Arial

  • Аа

    Georgia

  • Аа

    Times New Roman

  • Аа

    Courier

  • Аа

    Courier New

  • Аа

    Menlo

  • Аа

    SF Mono

стр.

Дейв Тейлор, Брендон Перри

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

2-е издание

Dave Taylor, Brandon Perry

Wicked Cool Shell Scripts

101 Scripts for Linux, Mac OS X, and UNIX Systems

2nd Edition

Перевел с английского А. Киселев

Заведующая редакцией Ю. Сергиенко

Ведущий редактор Н. Римицан

Литературный редактор А. Петров

Художественный редактор С. Заматевская

Корректор И. Тимофеева

Верстка Л. Егорова

© 2017 by Dave Taylor and Brandon Perry

© Перевод на русский язык ООО Издательство «Питер», 2017

© Издание на русском языке, оформление ООО Издательство «Питер», 2017

© Серия «Для профессионалов», 2017

Об авторах

Дейв Тейлор (Dave Taylor) работает в компьютерной индустрии с 1980 года. Участвовал в создании BSD 4.4 UNIX, его программы включены во все основные дистрибутивы UNIX. Выдающийся оратор и автор тысяч статей для журналов и газет. Написал более 20 книг, включая «Learning Unix for OS X» (O’Reilly Media), «Solaris 9 for Dummies» (Wiley Publishing) и «Sams Teach Yourself Unix in 24 Hours» (Sams Publishing). Популярный колумнист журнала «Linux Journal» и основатель веб-сайта askdavetaylor.com, где осуществляет техническую поддержку пользователей и выкладывает обзоры новых гаджетов.

Брендон Перри (Brandon Perry) начал писать приложения на C# с выходом открытой реализации. NET — Mono. В свободное время любит писать модули для фреймворка Metasploit, исследовать двоичные файлы и тестировать всякие штуки.

О научном рецензенте

Джорди Гутьеррес Эрмосо (Jordi Gutiérrez Hermoso) — программист, математик и вольный хакер. Начиная с 2002 года пользуется исключительно Debian GNU/Linux не только дома, но и на работе. Джорди участвует в разработке GNU Octave, бесплатной вычислительной среды, во многом совместимой с Matlab, а также Mercurial, распределенной системы управления версиями. Увлекается чистой и прикладной математикой, катанием на коньках, плаванием и вязанием. В последнее время много думает о проблемах выброса парниковых газов и участвует в акциях по сохранению носорогов.

Благодарности для первого издания

В создании книги участвовало удивительно большое количество людей, но особенно хотелось бы отметить Ди-Анн Лебланк (Dee-Ann LeBlanc), научного рецензента первых вариантов рукописи и неутомимого собеседника в IM, и Ричарда Блюма (Richard Blum), научного редактора и опытнейшего разработчика сценариев, представившего важные комментарии к подавляющему большинству сценариев в книге. Нат Торкингтон (Nat Torkington) помог с организацией и надежностью сценариев. В числе других, оказавших неоценимую помощь в процессе работы над книгой, можно назвать Одри Бронфин (Audrey Bronfin), Мартина Брауна (Martin Brown), Брайана Дея (Brian Day), Дейва Энниса (Dave Ennis), Вернера Клаузера (Werner Klauser), Юджина Ли (Eugene Lee), Энди Лестера (Andy Lester) и Джона Мейстера (John Meister). Немало полезного было почерпнуто на форумах MacOSX.com (отличное место для общения), а коллектив AnswerSquad.com предложил много ценных советов и предоставил бесконечные возможности для отдыха. Наконец, эта книга не оказалась бы в ваших руках без поддержки Билла Поллока (Bill Pollock) и помощи Хиллеля Хинштейна (Hillel Heinstein), Ребекки Пеппер (Rebecca Pepper) и Кэрол Жардо (Karol Jurado): спасибо всему коллективу No Starch Press!

Я хотел бы поблагодарить за поддержку моих замечательных детей — Эшли (Ashley), Гарета (Gareth) и Киану (Kiana) — а также обитателей нашего домашнего зверинца.

Благодарности для второго издания

За последние десять лет «Сценарии командной оболочки» зарекомендовала себя как нужная и полезная книга для тех, кто увлекается созданием сценариев на языке командной оболочки bash или желает освоить более эффективные приемы. В обновленном втором издании Дейв и я надеялись дать этой книге второе дыхание и вдохновить других на еще одно десятилетие экспериментов со сценариями командной оболочки. Эту работу, в ходе которой были добавлены новые сценарии и уточнены многие формулировки, нам не удалось бы проделать без поддержки многих и многих.

Хочу сказать спасибо своему коту Сэму, который сидел на ноутбуке, пока я пытался работать. Полагаю, он был уверен, что помогает мне. Мои друзья и семья с пониманием отнеслись к тому, что я добрых нескольких месяцев говорил только о сценариях bash. Коллектив издательства No Starch Press был необычайно благосклонен ко мне, не писавшему ничего крупнее заметки в школьную газету или статьи в блог, поэтому огромное спасибо Биллу Поллоку (Bill Pollock), Лиз Чадвик (Liz Chadwick), Лорел Чан (Laurel Chun) и всем остальным сотрудникам No Starch. Комментарии Джорди Гутьерреса Эрмосо, касающиеся технических аспектов книги и программного кода, были для меня более чем ценными.

С момента первой публикации этой книги в 2004 году в мире администрирования системы Unix произошли огромные изменения. В то время лишь немногие пользователи устанавливали на свои компьютеры Unix-подобные операционные системы. Но с появлением дружественных к начинающим дистрибутивов Linux, таких как Ubuntu, ситуация стала меняться. Затем появилась OS X, следующее поколение операционной системы компании Apple, основанной на Unix, за ней последовало множество технологий на основе iOS. В настоящее время Unix-подобные операционные системы получили более широкое признание. Фактически они стали самыми вездесущими в мире, если принять во внимание Android — операционную систему для смартфонов.

Излишне говорить, что многое изменилось, но одно остается неизменным — командная оболочка Bourne-again shell, или bash, сохраняет свои позиции основной командной оболочки в Unix. Использование всех возможностей ее языка никогда прежде не было такой насущной необходимостью для системных администраторов, инженеров и энтузиастов.

Что исчезло во втором издании

В этой книге описываются типичные сложности, с которыми можно столкнуться при попытке написать переносимое автоматизированное решение, например, для сборки программного обеспечения или координации действий других программ, и способы их преодоления. Решения в книге подаются так, чтобы вы могли взять их за основу и экстраполировать на другие схожие задачи. Например, в главе 1 мы напишем переносимую версию программы echo в виде небольшого сценария-обертки. Многим системным администраторам может пригодиться этот конкретный сценарий, но основная идея заключается в том, чтобы создать сценарий-обертку, гарантирующий единообразие поведения на разных платформах. Далее в книге мы разберем некоторые интересные особенности сценариев на языке bash и типичные утилиты, доступные в системах Unix и дающие нам самые широкие возможности.

Эта книга для вас, если…

Bash остается основным инструментом для всех, кто работает с серверами или рабочими станциями, действующими под управлением Unix-подобных операционных систем, в том числе и для веб-разработчиков (многие из которых ведут разработку в OS X и развертывают свои приложения на серверах под Linux), аналитиков, разработчиков мобильных приложений и программистов. Кроме того, все больше появляется энтузиастов, запускающих Linux на своих микрокомпьютерах с открытой архитектурой, таких как Raspberry Pi, для автоматизации бытовых приборов. Сценарии командной оболочки отлично походят для всех этих случаев.

Представленные в книге сценарии будут, безусловно, полезны и тем, кто желает расширить и без того немалый опыт владения bash за счет изучения практических примеров, и тем, кто пользуется терминалом или сценариями командной оболочки лишь изредка. Если вы принадлежите ко второму лагерю, вам, вероятно, потребуется освежить знания или дополнить их, прочитав введение в продвинутые возможности bash.

Эта книга — не учебник! Наша цель — продемонстрировать практические приемы программирования сценариев на bash и познакомить с распространенными утилитами на (в большинстве) коротких и компактных примерах, но мы не описываем их строку за строкой. Мы объясняем только самые основные части, а опытные создатели сценариев смогут сами понять, как действует остальной код, прочитав его. Мы надеемся, что вы, уважаемый читатель, будете экспериментировать с этими сценариями — ломать их, исправлять и приспосабливать под свои нужды — чтобы понять, как они работают. Главная наша цель — показать, как решать типичные задачи, такие как управление сетью или синхронизация файлов, которые встают перед любым техническим специалистом.

Структура книги

Это второе издание включает дополненные оригинальные 12 глав и 3 новые главы. Каждая глава демонстрирует новые особенности или варианты использования сценариев командной оболочки, и вместе они охватывают всю широту возможностей сценариев для более простой работы в Unix. Большинство сценариев, представленных в книге, будет работать и в Linux, и в OS X. В иных случаях мы напишем об этом прямо.

Глава 0: Краткое введение в сценарии командной оболочки

Это совершенно новая глава, появившаяся во втором издании, которая послужит начинающим пользователям Unix кратким введением в синтаксис языка командной оболочки bash и особенности его использования. Эта глава быстро и без лирических отступлений расскажет все, что потребуется для успешного чтения главы 1: от простого определения сценариев командной оболочки до создания и выполнения незамысловатых примеров.

Глава 1: Отсутствующая библиотека

Комментарии к книге «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание», Дейв Тейлор

Всего 0 комментариев

Комментариев к этой книге пока нет, будьте первым!

РЕКОМЕНДУЕМ К ПРОЧТЕНИЮ

Популярные и начинающие авторы, крупнейшие и нишевые издательства