Попытка сделать фильтр с помощью grep - PullRequest
0 голосов
/ 25 июня 2010

Я пытаюсь создать фильтр, который захватывает все строки файла .exe. Например, из этого:

[05/Apr/2010:11:00:01 -0300] /~mauro/Lista_conceitos_BD_2004.DOC 200 46080

[05/Apr/2010:11:00:54 -0300] /~lucia/articles/PROPOR96-Rino.pdf 200 153253

[05/Apr/2010:11:01:32 -0300] /~daniel_leite/RenomearTudo/setup.exe 200 1692017

[05/Apr/2010:11:02:12 -0300] /~grv/tutrv/fig23.jpg 200 22821

[05/Apr/2010:11:04:11 -0300] /~lucia/TechRep/NILCTR981-RMartinse

Я хочу получить это:

[05/Apr/2010:11:01:32 -0300] /~daniel_leite/RenomearTudo/setup.exe 200 1692017

Я пытаюсь с grep -w '*.exe' filteredAccessLog > filteredSuccessIMGAccessLog, но он вообще не работает. Если бы кто-то мог помочь, я был бы благодарен.

Ответы [ 4 ]

6 голосов
/ 25 июня 2010

Звездочка означает *, а. означает «любой символ». Попробуйте это:

grep "\.exe" filteredAccessLog > filteredSuccessIMGAccessLog
5 голосов
/ 25 июня 2010

grep -F .exe filteredAccessLog > filteredSuccessIMGAccessLog

2 голосов
/ 25 июня 2010

Эта звездочка может не означать то, что вы думаете, что это значит.В регулярных выражениях звездочка означает 0 или более повторений предыдущего символа или группы.

1 голос
/ 25 июня 2010

Просто пропустите звездочку:

grep -w '.exe' filteredAccessLog > filteredSuccessIMGAccessLog
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...