Проблема с классом символов при использовании grep в Windows - PullRequest
1 голос
/ 24 мая 2019

Я пытаюсь использовать grep в Windows для поиска во всех файлах в текущем каталоге слова foo, за которым следует пробел.

Я пытался:

grep foo\s *

Но это не работает.Это соответствует foos хотя.У меня сложилось впечатление, что \s должно соответствовать пробелу.Это действительно так и в других тестерах регулярных выражений.

Я также пробовал grep foo\\s * grep "foo\s" * и множество других попыток.

Чего мне не хватает?

Я используюGNU grep 2.5.4 в Windows 10 в cmd.exe

1 Ответ

1 голос
/ 24 мая 2019

Кажется, есть ошибка с обработкой \ s в grep до версии 2.5 grep regex Поведение пробелов

У вас есть несколько альтернатив этому

grep "foo[ \t] *
grep "foo[[:space:]]" *

или если вас не волнует табулирование

grep "foo " *
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...