Командная оболочка Unix
Bash
Что это такое
Командная оболочка Unix — программа, которая читает команды, запускает их и соединяет их ввод и вывод. Сила её не в самих командах, а в композиции: каждая команда — небольшой инструмент, который читает текст, пишет текст и сообщает об успехе или неудаче, а оболочка связывает их вместе. В инструментарий входят файловая система, права, окружение и конвейеры; беглость приходит от того, что этот небольшой словарь по-настоящему универсален.
Почему это важно
Оболочка — интерфейс по умолчанию каждого сервера, контейнера и сборочного конвейера, который вам встретится: задача, требующая двадцати кликов в графическом инструменте, здесь решается одной командой, и та же команда одинаково работает на машине коллеги и в конвейере развёртывания. Настоящий аргумент при этом — воспроизводимость: команда записывает то, что было сделано, и эту запись можно прочитать, повторить и положить в скрипт. Это ещё и самый быстрый способ ответить на вопросы о системе — какой процесс держит этот порт, что изменилось в этом каталоге, в каких файлах есть эта строка.
Что в этом треке
- Конвейеры и фильтры (01-cs-fundamentals/13-unix-shell/01-pipelines-and-filters) — три потока, трубы, перенаправление, а ещё небольшие текстовые инструменты, которые складываются в композицию.
- Файлы, права и окружение (01-cs-fundamentals/13-unix-shell/02-files-permissions-and-environment) — где что лежит, кому позволено это трогать и как команда находит нужное.
Предварительные требования
Нет.
Что читать дальше
- Интерфейс командной строки (01-cs-fundamentals/24-command-line-interface) — как превратить инструментарий в привычку работать, когда механика уже освоена.
- Git (система контроля версий) (01-cs-fundamentals/12-git) — инструмент, где эта беглость окупается прямее всего.
- Операционные системы (01-cs-fundamentals/15-operating-systems) — процессы, файлы и права, с которыми эти команды разговаривают.