Как рекурсивно искать файлы с определенными расширениями?

#linux #grep #find #ls

#linux #grep #Найти #ls

Вопрос:

Мне нужно найти все .psd файлы в моей системе Linux (выделенный веб-хостинг). Я пробовал что-то вроде этого: ls -R *.psd , но это не работает. Предложения?

Ответ №1:

Для этого вы можете использовать следующую команду find:

 find /path/to/search -iname '*.psd'
  

iname выполняется поиск без учета регистра.

Комментарии:

1. Я не знаю точного пути. Как мне сделать это рекурсивно?

2. @StackOverflowNewbie Он уже делает это рекурсивно. /path/to/search откуда вы хотите, чтобы он начал поиск. Если это текущий каталог, используйте find . -iname '*.psd'

3. Или find / -iname '*.psd' для поиска по всей системе.

Ответ №2:

вы также можете

 ls ./**/*.psd
  

но:

  • у вас должна быть версия bash 4
  • у вас должен быть shopt -s globstar #в вашем .bashrc или .profile и т.д….
  • будет ли поиск выполнен с учетом регистра (или вы должны также установить shopt -s nocaseglob )