Файл поиска linux на основе шаблона имени файла Я хочу найти серию файлов на основе имени файлов. Вот мой каталог: Например, у меня был файл выше. Я хочу только искать файл без _bak. Ответ 1 Если вы хотите ограничить поиск в текущем каталоге, используйте: find . -maxdepth 1 -mindepth 1 ! -name '*_bak' Если вы хотите, чтобы рекурсивно найти во всех каталогах, удалите -maxdepth 1. Редактировать в ответ на комментарий OP Чтобы получить файлы, начинающиеся с ei и не заканчивающиеся на _bak, используйте: find . -type f -name 'ei*' -a ! -name '*_bak' Ответ 2 Пожалуйста, попробуйте следующее: find . -type f ! -iname "*_bak" Вышеупомянутая команда найдет все файлы, которые не заканчиваются _bak. Ответ 3 Используйте параметр "Перевернуть совпадение". Например, если вам нужен весь файл без слова _bak, используйте: grep -v *_bak /path/to/file
Ответ 1 Если вы хотите ограничить поиск в текущем каталоге, используйте: find . -maxdepth 1 -mindepth 1 ! -name '*_bak' Если вы хотите, чтобы рекурсивно найти во всех каталогах, удалите -maxdepth 1. Редактировать в ответ на комментарий OP Чтобы получить файлы, начинающиеся с ei и не заканчивающиеся на _bak, используйте: find . -type f -name 'ei*' -a ! -name '*_bak'
Ответ 2 Пожалуйста, попробуйте следующее: find . -type f ! -iname "*_bak" Вышеупомянутая команда найдет все файлы, которые не заканчиваются _bak.
Ответ 3 Используйте параметр "Перевернуть совпадение". Например, если вам нужен весь файл без слова _bak, используйте: grep -v *_bak /path/to/file