Подтвердить что ты не робот

Файл поиска linux на основе шаблона имени файла

Я хочу найти серию файлов на основе имени файлов.

Вот мой каталог:

enter image description here

Например, у меня был файл выше.

Я хочу только искать файл без _bak.

4b9b3361

Ответ 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