Рассмотрим следующий пример, где grep
используется для поиска в двоичном режиме:
$ echo "test blabla test ertytey" | grep -ao tes
tes
tes
Я могу добавить «точку» в шаблон поиска, чтобы «соответствовать любому символу» и показатьследующий символ после совпадения:
$ echo "test blabla test ertytey" | grep -ao tes.
test
test
... или более точек, чтобы соответствовать последующим символам:
$ echo "test blabla test ertytey" | grep -ao tes...
test b
test e
Допустим, теперь я хочу сопоставитьколичество символов ( скажем, 30 , №: 3) после матча;и я прочитал из man grep
: {n} Предыдущий элемент соответствует ровно n раз. .Поэтому я пытаюсь:
$ echo "test blabla test ertytey" | grep -ao tes.{3}
$
... ничего не происходит;
$ echo "test blabla test ertytey" | grep -ao tes.\{3\}
$
... ничего не происходит;
$ echo "test blabla test ertytey" | grep -ao tes[.]\{3\}
$
... ничего не происходит;
$ echo "test blabla test ertytey" | grep -ao tes\[.\]\{3\}
$
... ничего не происходит.
Любые идеи о том, каким будет правильный синтаксис для соответствия "любому символу" (точка) заданное число раз в grepбинарный режим?
Заранее большое спасибо за любые ответы,
Приветствия!
РЕДАКТИРОВАТЬ: как указывает ответ @aix ', изначально я допустил ошибку, указав 30 символовдля поиска, тогда как строка в примере недостаточно длинна :) Теперь изменили ее на более разумный счет 3 :)