文字列を表示したいのですがgrep
、一致した行だけでなく、前の 5 行と次の 5 行も表示します。どうすればこれを行うことができますか?
1289707 次
14 に答える
5116
BSDまたはGNU の場合、一致前の行数と一致後の行数を設定するためにgrep
使用できます。-B num
-A num
grep -B 3 -A 2 foo README.txt
前後に同じ行数が必要な場合は、 を使用できます-C num
。
grep -C 3 foo README.txt
これにより、前後 3 行が表示されます。
于 2008-08-12T17:57:43.307 に答える
634
-A
そして-B
、-C n
(n
文脈の行の場合)または単に-n
(n
文脈の行の場合... nが1から9である限り)機能します。
于 2008-08-12T17:59:56.080 に答える
80
ackは grep と同様の引数で動作し、-C
. ただし、通常はコードを検索する方が適しています。
于 2008-09-07T11:13:11.773 に答える
42
grep astring myfile -A 5 -B 5
「astring」の「myfile」をgrepし、各一致の前後に5行を表示します
于 2008-08-12T17:58:00.153 に答える
21
私は通常使用します
grep searchstring file -C n # n for number of lines of context up and down
grep などのツールの多くには、非常に優れた man ファイルもあります。grepでできることはたくさんあるので、grep の man ページをよく参照しています。
man grep
多くの GNU ツールには、man ページに加えて、より有用な情報を含む情報ページもあります。
info grep
于 2008-08-12T18:42:49.080 に答える
16
grep を使用する
$ grep --help | grep -i context
Context control:
-B, --before-context=NUM print NUM lines of leading context
-A, --after-context=NUM print NUM lines of trailing context
-C, --context=NUM print NUM lines of output context
-NUM same as --context=NUM
于 2018-01-12T11:25:38.453 に答える