Что такое shell
Shell — программа, которая читает ваши команды и выполняет их. Вы пишете текст, нажимаете Enter, shell запускает нужную программу и показывает результат.
bash и zsh
Заголовок раздела «bash и zsh»Все shell в Linux и macOS похожи на первый shell Unix — sh.
- bash — shell по умолчанию в Linux, WSL и Git Bash. Его же вы встретите на серверах.
- zsh — shell по умолчанию в macOS. Он умеет всё, что bash, и немного больше.
Для этого курса разницы нет. Команды одинаковые.
Приглашение
Заголовок раздела «Приглашение»Когда shell ждёт команду, он показывает приглашение (prompt). Например:
maria@laptop:~/cli-practice$maria— пользователь,laptop— имя компьютера.~/cli-practice— папка, в которой вы сейчас.$— вы обычный пользователь. В zsh на macOS вместо него%.#— вы root, администратор. Root может удалить что угодно. Будьте осторожны.
В уроках мы пишем только команду, без приглашения. Копируйте то, что после $.
Как устроена команда
Заголовок раздела «Как устроена команда»ls -l datals— команда, то есть программа.-l— опция (флаг). Меняет поведение команды. Опции начинаются с-.data— аргумент. С чем работать.
Несколько коротких опций можно склеить: ls -l -a и ls -la — одно и то же.
Первые команды
Заголовок раздела «Первые команды»echo "Привет, терминал" # напечатать текстwhoami # кто яdate # текущие дата и времяclear # очистить экран (или Ctrl + L)history # команды, которые вы вводилиВсё после # — комментарий. Shell его не выполняет. Комментарии можно копировать вместе с командой.
Клавиши, которые экономят время
Заголовок раздела «Клавиши, которые экономят время»| Клавиши | Что делают |
|---|---|
Tab | Дописывает имя файла или команды. Два раза Tab — показать варианты |
↑ / ↓ | Предыдущая и следующая команда из истории |
Ctrl + C | Остановить команду, которая зависла или работает слишком долго |
Ctrl + A / Ctrl + E | В начало / в конец строки |
Ctrl + R | Поиск по истории команд |
Tab — главная клавиша. Никто не печатает длинные пути целиком.
Практика
Заголовок раздела «Практика»Решайте сами, без AI. Сначала выполните команду, потом сверьтесь с проверкой, и только потом открывайте решение.
Задание 1
Заголовок раздела «Задание 1»Узнайте, какой shell у вас запущен.
Проверка: /bin/zsh на macOS, /usr/bin/bash в Git Bash, /bin/bash в WSL и Linux.
Решение
echo $SHELLЗадание 2
Заголовок раздела «Задание 2»Узнайте имя своего пользователя и текущую дату одной строкой: команды можно разделить точкой с запятой ;.
Проверка: две строки. В первой — ваше имя пользователя, во второй — дата и время.
Решение
whoami; dateЗадание 3
Заголовок раздела «Задание 3»Напишите ech и нажмите Tab. Что произошло? Потом найдите в истории команду whoami через Ctrl + R.
Проверка: Tab дописал echo. Ctrl + R, потом who — в строке появилась whoami. Enter выполнит её.
Решение
Просто нажимайте клавиши. Выйти из поиска без запуска — Ctrl + C.
Задание 4
Заголовок раздела «Задание 4»Запустите sleep 100 — эта команда ждёт 100 секунд. Не ждите, остановите её.
Проверка: приглашение вернулось сразу, а не через 100 секунд.
Решение
sleep 100Потом нажмите Ctrl + C.
Дальше: Навигация.