Поиск каталога в терминале Linux

48

Как я могу найти определенный каталог в окне терминала в Linux? Я думаю, что это связано с использованием grep, но я не уверен, как.

stanigator
источник
удаление find-in-filesтега, так как вы находите каталог, поиск по содержимому файла не подразумевается.
Ник
Что вы знаете о каталоге, который позволит вам найти его?
Дэвид З
1
Вы должны предоставить хотя бы несколько критериев поиска, «конкретное» немного расплывчато. На диске можно найти элементы, основанные на именах, отношениях, размерах, содержимом и т. д.
Акира

Ответы:

69

Вы бы искали что-то подобное?

находить . тип d | grep DIRNAME
Nik
источник
21
что не так с find . -name DIRNAME -type d?
Бенджамин Банье
4
@honk, ничего :-)- ОП, похоже, нравится grep; и нам всем нравится разнообразие
Ник
какая разница?
Доблер
Пять лет спустя я заметил, что ответ в комментарии обрабатывается медленнее, чем исходный. Возможно глюк. Кто угодно? Bueller?
aCodeSmith
26

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

find / -name DIRNAME -type d
garyjohn
источник
5
И, если вы хотите, чтобы findв рабочем каталоге - заменить ' /' на ' .' - может быть быстрее.
Ник
2

Если он у вас установлен, locateпредназначен для этого. Google "человек найти"

ДЕРЕВО
источник
Хотя locate не будет предоставлять вам результаты в реальном времени, но вместо этого возвращает результаты, которые он собрал во время последнего запуска updatedb. Если файловая система не сильно меняется, то это не является реальной проблемой, и определение местоположения происходит очень быстро.
Янне Пиккарайнен
-1 Locate предназначен для поиска файлов, а не каталогов. Или есть вариант, о котором я не знаю?
Мартин Р.
locate прекрасно работает с каталогами.
ДЕРЕВО