1

Предположим, мой текстовый файл выглядит так:

hello world1
foo bar2
hello world3
foo bar4
hello world5
foo bar 

Если я запускаю эту команду grep -A 4 'hello' draft.txt , я думал, что она напечатает что-то вроде этого:

hello world1     <<<<<<< This line matches
foo bar2         <<< These lines are the printed because of -A 4
hello world3     <<<
foo bar4         <<<
hello world5     <<< 
hello world3     <<<<<<< this line matches
foo bar4         <<< These lines are printed because of -A 4
hello world5     <<<
foo bar          <<<
 ... < so on > ....

Но на самом деле он печатает это (что может быть функцией / ошибкой).

hello world1
foo bar2
hello world3
foo bar4
hello world5
foo bar 

Это как это должно работать? как заставить его вести себя так, как я думал? (какой переключатель / вариант я использую?)

1 ответ1

0

Другие строки с совпадениями считаются контекстом. Вы можете сделать что-нибудь, чтобы отобразились совпадения, чтобы сделать вывод более легким для чтения.

grep  --color -A 4 'hello' draft.txt

Несмежные группы совпадений и строк контекста будут разделены -- на отдельной строке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .