grep для строки, которая имеет определенное число в конце - PullRequest
0 голосов
/ 20 января 2012

Я хочу grep для строки THREAD: 2.Он имеет пробел между ними.Не могу понять, как.

Я пытался с grep "THREAD:[ \2]", но он не работает

Пожалуйста, дайте мне знать.

Ответы [ 3 ]

0 голосов
/ 20 января 2012

Если вы используете GNU grep, вы можете попробовать использовать псевдоним egrep или grep -e с 'THREAD: 2 $'

Возможно, вам придется использовать '^. * THREAD: 2 $'

0 голосов
/ 20 января 2012

grep сообщает всю строку, которая соответствует вашему шаблону. Если вы хотите посмотреть на строки, содержащие THREAD: 2, то должно работать следующее -

grep "THREAD: 2" filename

Однако, если вы хотите получить строки, которые могут содержать THREAD: и любое число, вы можете использовать класс символов. Так что в этом случае ответ будет -

grep "THREAD: [0-9]" filename

Вы можете добавить + после класса символов, что означает одно или несколько чисел, чтобы вы могли сопоставлять числа, такие как 1,2,3 или 11,12,13 и т. Д.

Если вы хотите получить только THREAD: 2 со своей линии, вам придется использовать опцию grep, которая равна -o. Это означает показать мне только мой шаблон из файла, а не всю строку.

grep -o "THREAD: 2" filename

Вы можете найти man page для grep и поиграть со всеми опциями.

0 голосов
/ 20 января 2012

Попробуйте grep "THREAD: 2" <filename>?Вы просто хотите буквальный «2», верно?

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