Введение
В этой лабораторной работе вы изучите полезный приём, который называется подстановкой команд.
Представьте, что вы пишете электронное письмо и хотите указать в нём сегодняшнюю дату. Вы хотите, чтобы компьютер автоматически вставил «сегодняшнюю дату».
В Linux для этого используется конструкция $(). Она сообщает компьютеру: «Сначала выполните эту команду, а затем вставьте результат именно сюда».
Это одна из самых полезных возможностей оболочки для объединения команд. Вместо того чтобы вручную копировать вывод одной команды и вставлять его в другую, вы можете поручить оболочке автоматически выполнить эту подстановку.
В этой лабораторной работе вы:
- научитесь форматировать вывод команды
date; - создадите каталог, имя которого автоматически содержит сегодняшнюю дату, например
2025-12-23.
Форматирование даты
Сначала получите дату в нужном формате.
Если просто выполнить команду date, она выведет строку не в самом удобном виде.
Это хорошо показывает, что многие команды поддерживают форматированный вывод. Инструменты Linux часто позволяют выбрать удобный для человека или удобный для обработки программой формат — в зависимости от того, что вы собираетесь делать с результатом.
Чтобы получить аккуратное имя каталога, например 2025-12-23, используйте +%F:
date +%F
Пример вывода:
2025-12-23
Создание каталога с динамическим именем
Теперь применим этот приём.
Нужно создать каталог с использованием даты, но не вводить дату вручную.
Поместите команду date внутрь команды mkdir, используя $(). Оболочка увидит $() и сначала выполнит команду внутри этой конструкции.
Выполните:
mkdir $(date +%F)
Что произошло:
- Оболочка обнаружила
$(date +%F). - Она незаметно для вас выполнила
date +%Fи получила результат, например2025-12-23. - Она заменила часть
$()полученным результатом. - Затем выполнила команду
mkdir 2025-12-23.
Это показывает, что оболочка формирует итоговую команду поэтапно. Подстановка команд выполняется до запуска основной команды, поэтому полученный результат можно использовать как обычный аргумент.
Проверка каталога
Проверьте, успешно ли создан каталог.
Выполните команду ls:
ls -l
В списке должен появиться новый каталог с сегодняшней датой в имени.
Если выполнить этот скрипт завтра, он создаст новый каталог с завтрашней датой. Так работает автоматическое резервное копирование!
Итоги
В этой лабораторной работе вы изучили подстановку команд — использование вывода одной команды в качестве входных данных для другой.
- Приём:
$(command) - Процесс: Linux сначала выполняет внутреннюю команду, а затем заменяет её конструкцию полученным результатом.
- Результат: вы можете создавать динамические команды, которые меняются в зависимости от времени, пользователя или других условий, не вводя значения вручную.
Попробуйте ещё раз выполнить echo "Today is $(date)", чтобы увидеть этот приём в действии.



