Я использую Linux для анализа структуры каталогов окон. Структура:
/Documents and settings
/username1
/My Documents
...
/username2
/My Documents
...
...
Что команда может я выполнять так, чтобы содержание (и sub папки) всех каталогов "My Documents" было перечислено как:
/Documents and Settings/username1/My Documents/filename
/Documents and Settings/username1/My Documents/subdir/filename
/Documents and Settings/username2/My Documents/filename
В основном существует тонна пользователей, но почти ни один ничего не имеет в их папке My Documents. Я просто хочу найти и показать содержание тех пользователь, которые действительно имеют документы.
Править: Каждый каталог "имени пользователя" содержит много подкаталогов. Я только хочу перечислить дерево ниже папки My Documents, но сделать так для всех имен пользователей сразу.
Объединение первых двух ответов, использование находит и ls-R:
найдите "/Документы и настройки" - имя "Мои Документы" - должностное лицо ls-R {} \;
Это найдет все каталоги My Documents и перечислит все под ними с полными путями. Вам нужны кавычки, так как имена каталогов имеют пробелы в них.
Править: explination того, как это работает. Это запускается в Документах / и настройках, ища любой файл или каталог, который соответствует Моим Документам. Для каждого это находит, это заменяет путем {} в ls. \; показывает конец команды.
ls -R path_to_your_dir
или
ls -lR path_to_your_dir
для лучшего представления
Однако лучшее представление достигается с
find path_to_your_dir
Примечание: рекурсивные средства-R
Если Вы действительно хотите видеть путь и не хотите иметь полный рекурсивный список-R, это, кажется, делает примерно, что Вы хотите, это немного неуклюже хотя:
find . -type d -name '*Documents' ! -empty | (while read d; do echo $d; ls -la $d; done)
Если Вы хотите рекурсивный список файлов и папок под Documents and Settings/User/My Документы:
find Documents\ and\ Settings/*/My\ Documents -print
Если Вы только хотите только файлы и папки непосредственно под Documents and Settings/User/My Документы:
ls -dr Documents\ and\ Settings/*/My\ Documents/*
Первый будет включать файл как Documents and Settings/User/My Documents/dir1/file1, тогда как последний перечислит только Documents and Settings/User/My Documents/dir1