我希望在“关键字”之前和之后看到5行,但我收到此错误。 我正在使用HP-UNIX。 任何人都可以帮我这个吗? 谢谢
命令:grep -C 5 Keyword file_name
错误:
grep: illegal option -- C
usage: grep [-E|-F] [-c|-l|-q] [-bhinsvx] -e pattern_list...
[-f pattern_file...] [file...]
usage: grep [-E|-F] [-c|-l|-q] [-bhinsvx] [-e pattern_list...]
-f pattern_file... [file...]
usage: grep [-E|-F] [-c|-l|-q] [-bhinsvx] pattern [file...]
答案 0 :(得分:0)
以下是模仿awk
grep -C 5
awk '{a[NR]=$0} $0~s {f=NR} END {for (i=f-C;i<=f+C;i++) print a[i]}' C=5 s="Keyword" file_name
PS!只能用一次打击。
这应该模仿grep -C 5
以获得更多点击量。 (由于缺少数组排序,有些复杂)
awk '{a[NR]=$0} $0~s {f[NR]++} END {for (j=1;j<=NR;j++) if (f[j]) for (i=j-C;i<=j+C;i++) print a[i]}' C=5 s="Keyword" file_name