1

Задача состоит в том, чтобы сделать скрипт bash в Ubuntu. Предполагается, что в качестве аргумента берется каталог, и перечисляются все каталоги и подкаталоги из этого аргумента. У меня нет большого опыта работы с Bash, вы можете мне помочь?

2 ответа2

2

Есть несколько способов / утилит, которые вы могли бы сделать это. Если вы не можете позволить себе установить tree вы можете попробовать использовать доступные из коробки.

Список каталогов с помощью поиска

find . -type d

Это зависит от того, что именно вы планируете делать с результатами. Я предлагаю вам взглянуть на эту тему для других вариантов и вдохновения.

1

Вы можете использовать команду tree [ 1 ].

  tree -d "$1"

Опция -d будет перечислять только каталоги.

$1 - это первый параметр, который вы передаете скрипту.

Кстати, не анализируйте вывод команды как дерево или ls чтобы избежать проблем, связанных с пробелом и символом новой строки, которые являются символами, разрешенными внутри имени файла или каталога.

В последнем случае вы можете использовать find . Попросите man find в раковине или поискать, например, на этом сайте об этом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .