想要 grep 文件中的日期及其接下来的 5 行

Cec*_*iel 2 grep aix

我想 grep 文件中的当前日期,但还要输出接下来的 5 行。我如何使用 grep 或其他任何东西来做到这一点。grep -A 5 file.txt不起作用,输出如下所示。请帮忙 !

$grep $(date +"%m/%d") file.txt- 这仅适用于第一行。但我也希望显示接下来的 5 行。

$ grep -A 5 '$(date +"%m/%d")' file.txt
grep: Not a recognized flag: A
Usage: grep [-r] [-R] [-H] [-L] [-E|-F] [-c|-l|-q] [-insvxbhwyu] [-p[parasep]] -e pattern_list...
        [-f pattern_file...] [file...]
Usage: grep [-r] [-R] [-H] [-L]  [-E|-F] [-c|-l|-q] [-insvxbhwyu] [-p[parasep]] [-e pattern_list...]
        -f pattern_file... [file...]
Usage: grep [-r] [-R] [-H] [-L] [-E|-F] [-c|-l|-q] [-insvxbhwyu] [-p[parasep]] pattern_list [file...]
Run Code Online (Sandbox Code Playgroud)

Mat*_*Mat 6

您的 grep 不支持该-A标志,因此您不能使用它。但是你应该能够得到相同的结果awk

awk -v dt=$(date +%m/%d) '$0~dt{counter=5}counter>=0{print;counter--}' file.txt
Run Code Online (Sandbox Code Playgroud)

当找到匹配时,这会将计数器设置为 5,并在计数器不为负时打印和递减计数器。