Если вы часто используете командную строку, вы уже пишете небольшие программы. Команды, которые вводятся вручную, можно сразу же помещать в shell‑скрипты, а в самом терминале доступны все привычные конструкции программирования: переменные, условные операторы, циклы.
От однострочников к скриптам
- Начинаете с
ls,pwd,grepи т.п. - Понимаете, что одни и те же команды повторяются.
- Сохраняете их в файл‑скрипт - никакой разницы в синтаксисе, просто набор команд.
Управляющие конструкции прямо в командной строке
bash
Копировать код
for f in *.py; do
vim "$f"
done
*.py- глоббинг (маска).- Цикл перебирает файлы, передаёт каждый в
vim. - Тот же код можно протестировать сразу в терминале, а потом вынести в файл.
Нет реального разделения между интерактивным использованием и скриптами
| Что | Интерактивно | В скрипте |
|---|---|---|
| Команды | вводятся вручную | записываются в файл |
| Управляющие конструкции | &&, ` |
|
| Повторное использование | история, алиасы | функции, скрипты |
| Цель | быстрое действие | автоматизация |
В обоих случаях управляет вы; оболочка лишь исполняет ваши инструкции. Поэтому многие простые задачи автоматизируют именно с помощью Bash/Zsh, а не Python.
Что это даёт
- Скорость - один скрипт заменяет десятки повторяющихся вводов.
- Плавный переход к более сложным языкам - вы уже знакомы с базовыми концепциями.
- Прозрачность - видно, какая именно команда вызывается, что упрощает отладку.
Таким образом, терминал Linux - это не просто средство управления системой, а полноценная программируемая среда. Используя его как язык, вы превращаете рутинные действия в автоматизированный код.
