Наука и технологии
3 марта 2014, 07:02

Сайт дня: ExplainShell - первый шаг в прокачке сисадмина 80 левела

Судя по атмосфере в Твиттере сегодня информационные технологии интересуют только настоящих гиков. Так или иначе, но сегодня сайтом дня объявляется гиковский справочный проект ExplainShell. Я, в виде исключения, достал его из специальной папки в закладках, где хранятся тысячи сайтов, забракованных мной ранее, как "слишком гиковские".

Главная страница сайта ExplainShell

На дворе 21-й век, повсюду высокие технологии, модно знать такие вещи, как Java на Android, Objective C на iOS или C# на Windows. Ещё чуть-чуть и весь мир перепишут на Javascript. Новички программисты вместо Perl разучивают Python. Однако по-прежнему половина проблем в компьютерном мире решается строчкой на Unix Shell. Иногда настолько запутанной строчкой, что её невозможно понять без хорошего справочника. Такого, например, как сайт ExplainShell.

Вы можете ввести на сайте ExplainShell строчку команды, составленной самым безумным сисадмином или самым гениальным хакером, а сайт разберёт её на простые и понятные составляющие и объяснит вам их смысл.

В качестве примеров приведены несколько хрестоматийных команд. Например, таких:

Разбор простой команды на сайте ExplainShell

По ясности изложения сайту ExplainShell далеко до знаменитого "Advanced Bash-Scripting Guide" но зато он быстрее, а на реальных задачах это бывает важно.

В особо сложных случаях сайт ExplainShell оставляет один-два фрагмента команды без пояснений. Это потому, что в Unix Shell есть безграничные возможности запутать код и ни один автоматический справочник их никогда все не выучит. Впрочем, на моей памяти ExplainShell не справлялся только с теми фрагментами, которые я понимал без пояснений.

Разбор сложной команды на сайте ExplainShell

Для особо запущенных случаев на ExplainShell есть man-страницы практически для всех стандартных команд и утилит. Причём в легко читаемом виде, а не как в раннем Unix:

Выдержка из man-страницы на сайте ExplainShell

Важность сайта ExplainShell обусловлена тем, что Unix Shell уже лет сорок занимает видное место среди языков, которые будущему программисту стоит изучить в первую очередь. Буквально сразу после английского и прямо перед ассемблером.

Знаете ещё хорошие сайты? Пишите на sitesoftheday@ferra.ru.