Курс языка программирования Raku / Объекты, ввод-вывод и исключения / Ввод и вывод / Работа с каталогами / Exercises / Создайте каталог
Решение: Создайте каталог
Вот один из возможных вариантов решения задачи.
Код
mkdir 'reports';
spurt 'reports/data.txt', 'x';
say 'reports'.IO.d;
say 'reports/data.txt'.IO.e;🦋 Исходный код можно найти в файле make-a-directory.raku.
Вывод
True
TrueКомментарии
mkdirсоздаёт каталог, а.IO.dподтверждает, чтоreports— это каталог.Поскольку каталог теперь существует, в него можно записать файл, указав путь, включающий имя каталога, —
reports/data.txt. Проверка.eдля этого пути подтверждает, что файл создан внутри нового каталога.Порядок здесь важен:
spurtне создаёт недостающие каталоги за вас. Запись вreports/data.txtдо того, как появился каталогreports, завершится ошибкой вродеFailed to open file … : No such file or directory. Именно предварительное создание каталога — как здесь делаетmkdir— и позволяет записи пройти. Удобно, чтоmkdirзаодно создаёт и все недостающие промежуточные каталоги, поэтому вложенный путь вродеmkdir 'reports/2026'строит всю цепочку за один вызов.