Как использовать рекурсивную команду создания каталога в Linux



Попробуйте наш инструмент устранения неполадок

Обычно, когда вы используете команду mkdir Linux make directory, вы создаете единственный подкаталог, который находится в любом каталоге, в котором находится ваше приглашение. Если вы были в ~ / Documents и набрали mkdir Memoranda, вы бы создали единственный каталог с именем Меморандумы, которые жили в ~ / Documents. Обычно вы не создаете в нем дополнительных каталогов.

Однако вы можете использовать рекурсивную форму команды Linux make directory для создания целых деревьев каталогов. Вы можете создать каталог внутри каталога, в котором вы находитесь, а затем создать внутри него множество других каталогов. Естественно, чтобы продолжить, вам нужно будет работать из командной строки. Удерживайте Ctrl, Alt и T, чтобы открыть графический терминал. Вы также можете выполнить поиск терминала в Ubuntu Unity Dash или выбрать меню «Приложения», нажать «Системные инструменты» и выбрать «Терминал». Вам не нужно работать как пользователь root, если вы не создаете каталоги за пределами вашего собственного домашнего каталога.

Метод 1: использование родительского параметра mkdir

Если вы хотите создать сразу несколько каталогов, вы можете ввести mkdir -p эй / это / есть / а / целое / дерево а затем нажмите Enter. Вы получите полный набор каталогов с каждым из этих имен, вложенных друг в друга. Очевидно, вы можете использовать любое имя в любом месте дерева. Если некоторые из этих каталогов существуют, скажем, уже есть hey и this, но не другие, то mkdir просто передаст их без ошибок и создаст каталоги под ними.

Параметр -p называется родительским и теоретически может быть вызван во многих дистрибутивах, набрав –parents вместо –p в предыдущей команде. Таким образом вы можете создать практически неограниченное количество каталогов одновременно. Сразу после создания они работают как любые другие каталоги. Это означает, что если вы попытаетесь удалить верхнюю, она тоже будет жаловаться, что не пуста!

Метод 2: использование родительского mkdir Option Plus Brace Expansion

Расширение фигурных скобок позволяет вам создать группу каталогов, которые следуют единому шаблону при использовании интерпретатора команд bash. Например, если вы набрали mkdir {1..4} , то вы создадите четыре каталога с соответствующими номерами в текущем каталоге. Если хотите, то можете объединить эту концепцию с родительской опцией. Например, вы можете ввести mkdir -p 1 / {1..4} и нажмите Enter, чтобы создать каталог с именем 1 с каталогами с именами 1, 2, 3 и 4 внутри него. Это очень мощная команда, и вы можете использовать ее для одновременного создания множества каталогов. Это делает его идеальным для сортировки коллекций фотографий, видео и музыки в Linux. Некоторые люди также используют эту технологию при создании сценариев установки для программного обеспечения или пакетов, которые они планируют распространять.

Вы, конечно, можете смешать эту опцию и добавить фигурные скобки к любой части команды. Если вы хотите создать некоторые каталоги с помощью расширения скобок, а затем другие с помощью только родительской рекурсии, вы можете попробовать такую ​​команду, как mkdir -p a / directory / внутри {1..4} , который создаст каталог и внутри, а также внутри1, внутри2, внутри3 и внутри4 под ним. Не стесняйтесь немного поэкспериментировать и создать дополнительные каталоги внутри друг друга, как только вы уже научились использовать команду mkdir, но имейте в виду, что вы не сможете удалить каталоги, в которых есть другие каталоги, без небольшой рекурсия или использование файлового менеджера.

2 минуты на чтение