讓利匹配下一行,說我有一個文件:打印時模式
aaaaaaa
bbbbbbb
ccccccc
現在我想搜索BBBBBBB,當我拿到賽,我想從下一行,在這種情況下是CCCCCCC得到的結果。我正在查看grep手冊頁和bash內部解析函數,但找不到與此情況相關的任何內容。任何人都知道我怎麼能做到這一點?
感謝,
讓利匹配下一行,說我有一個文件:打印時模式
aaaaaaa
bbbbbbb
ccccccc
現在我想搜索BBBBBBB,當我拿到賽,我想從下一行,在這種情況下是CCCCCCC得到的結果。我正在查看grep手冊頁和bash內部解析函數,但找不到與此情況相關的任何內容。任何人都知道我怎麼能做到這一點?
感謝,
看那-A
選項grep
- 它會列出以下行。例如: -
grep -A1 bbbbbbb
儘管這將列出B的和C的...所以你可以這樣做:
grep -A1 bbbbbbb | grep -v bbbbbbb
排除B的。
隨着GNU sed的:
sed -n '/bbbbbbb/{n;p}' file
輸出:
ccccccc
這裏是一個awk
的解決方案,可能是
awk 'f{print;f=0} /bbbbbbb/{f=1}' file
ccccccc
使用grep
也許
cat file | grep "bbbbbbb" -A1 | tail -n 1
ccccccc
使用有益GAWK/AWK:
gawk '/bbbbbbb/ { getline; print $0 }' file
'而IFS =讀-r線; do [[$ line == bbbbbbb]] && IFS = read -r line && echo「$ line」;完成
Cyrus
你想要什麼時候yhe第二行也是'bbbbbbb'? –