⌨ Labor omnia vincit ☮

Learn the UNIX/Linux command line

Posted in books, GNU/Linux by anaumov on 05.04.2011

Знание команд и свободное владение интерпретатором shell всегда говорят о квалификации пользователя. Новички в GNU/Linux неправильно понимают назначение интерпретатора, и относятся к нему как к вынужденной мере, к которой приходится прибегать из-за отсутствия “нормальных” альтернатив. Более квалификацированные пользователи знают, что работа в консоли является самым быстрым и удобным средством для решения целого ряда задач. Не столь требовательный к ресурсам, более стабильный и быстрый… работу в shell хакеры уже давно возвели в ранг культуры и искусства, понятной лишь для своих.

Тут я хочу подсказать несколько источников, которые помогут в изучении. Возможно это не самые лучшие книги, к тому же они на английском (и для кого-то это будет проблемой), все же я надеюсь, что этот материал дополнит список посещаемых вами каждый день сраниц😉

“LINUX: Rute User’s Tutorial and Exposition” (Paul Sheer)

Эту книгу Пауля Шера можно смело рекомендовать не только как первую по работе в интерпретаторе shell, но просто по работе компьютера и устройстве GNU/Linux. Очень широкий охват, в то же время никакой воды. Коротко и ясно. Её рекомендуют для подготовки к экзаменам LPI и RHCE, так что по поводу качества не должно возникать никаких сомнений.
Книга учит учиться. Учиться самому эксперементировать, запускать незнакомые программы, анализировать их вывод, читать страницы руководства man. Не являясь новичком, мне все равно бывает интересно пробежаться по ее страницам. Не знаю есть ли русский перевод… мне это не интересно, так как книга написана очень понятно, и мне очень нравится ее стиль, а при переводе компьютерная литература как правило теряет его.

“UNIX Programming Environment” (Brian W. Kernighan, Rob Pike)

Безусловно классикой по работе в интерпретаторе shell является книга “UNIX – универсальная среда программирования“.
В книге разработчиков операционной системы UNIX блестяще открыт богатый “встроенный” арсенал этой системы. Многочисленными примерами и трюками иллюстрировано использование языка shell.

Книга начинается с введения для новичков в Unix. Затем рассказывается об основах файловой системы и shell. Читателя знакомият с принципами работы фильтров, препроцессорах tbl, eqn, и pic, затрагиваются вопросы создания надежных приложений на С, создании man-страниц, а так же основах grep, sed, make и awk. Вышедьшая в 1984 году ее первая редакция, сразу же назвали “Библией по работе в UNIX”. Эта книга считается самым авторитетным изданием о работе в Unix shell и по сей день.

“Bash Guide for Beginners” && “Advanced Bash-Scripting Guide”

Что касается литературы с более справочным уклоном, то по теме работы/программированию в BASH выделяют 3 основных мануала. Это:
BASH Programming – Introduction HOW-TO
Advanced Bash-Scripting Guide
Bash Guide for Beginners
Все они хороши по-своему, однако я считаю, что первый слишком краток, второй же наоборот – переполен справочным матералом, но в то же время в нем недостаточно ясные объяснения для новичков. Последний из списка занимает промежуточное в этом смысле положение. Advanced Bash-Scripting Guide хороший мануал, к тому же он содержит огромное количество примеров скриптов… все же ИМХО к нему лучше вернуться после прочтения Bash Guide for Beginners.

header-logo
Для всех любителей консоли интересными так же будут ресурсы http://commandlinefu.com и http://cb.vu. На первом сообщество делятся полезными в ежедневной работе командами, которые можно записать в одну строку. Каждый желающий может дать оценку той или иной команде, что позволяет всегда находить там что-то новое и интересное😉 Второй содержит список часто используемых команд, разложенных там по темам. Думаю, что его также можно рекомендовать новичкам. На сайте есть пародия консоли FreeBSD. Оставляю линк, хотя не думаю, что кого-то она сильно затянет.

explainshell_logo
Ну и напоследок… Python-энтузаст Idan Kamara собрал информацию (распарсил) вывод 29761 команд из Ubuntu’s manpage repository. В результате получился небольшой, но очень интересный проект explainshell.com, который поможет разобраться в сложных (и не только) командах, т.е. объяснит как именно shell будет их обрабатывать.
Очень рекоменду. Исходники на github.com.

Безусловно, изучение интерпретатора shell и умение работы в консоли как части операционной системы – процесс, требующий достаточного количества времени и практики. Я очень надеюсь, этот пост поможет в ее освоении.
Не важно используете ли вы KDE/GNOME или другое графическое окружение, консоль, являющаяся неотъемлемой частью философии UNIX/Linux, всегда под рукой🙂

3 Responses

Subscribe to comments with RSS.

  1. atolstoy said, on 06.04.2011 at 08:06

    Почитать, что-ли… А то я как раз отвыкать стал от чорной-чорной консоли🙂

    • Alex said, on 06.04.2011 at 11:01

      Открыл тут недавно: cal -m3
      Раньше для этого, бывало, и в гугл заглядывал и KDE календарь использовал…

  2. tuoma said, on 06.04.2011 at 14:59

    да, консоль весчь полезная. Вот только суся в этом плане расслабляет. Наиболее распространенные задачи можно решить с помощью гуя.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: