Найти имена файлов на основе нескольких вхождений символа - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь выяснить, почему не работает моя команда grep, которая должна выбирать те имена файлов в папке, которые имеют более 2 _ в имени:

test_file_1.tsv
test_file_2.tsv
test_fi_le_3.tsv

Я бегу в этой папке

find . -mindepth 1 -maxdepth 1 -type f | grep -E "_{3,}"

но ничего не возвращает вместо

test_fi_le_3.tsv

1 Ответ

0 голосов
/ 27 апреля 2018

Проблема в том, что "_{3,}" соответствует 3 или более последовательным подчеркиваниям.

Однако вам даже не нужно grep здесь, и используйте шаблон глобуса в опции -name, равной find, как этот:

find . -mindepth 1 -maxdepth 1 -type f -name '*_*_*'

./test_file_1.tsv
./test_file_2.tsv
./test_fi_le_3.tsv
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...