任何人都可以解释一下以下命令:
gawk -vRS="\n20" '/Job-157625/' log.1
我们正在使用此命令来获取作业的日志。
我知道gawk
用于查找/扫描模式,但我想知道为什么我们使用 -vRS 和 \n20 (为什么在 \n 之后使用 20)
答案1
gawk 的手册页读取
RS The input record separator, by default a newline.
因此,将记录分隔符从只是换行符更改为紧跟“20”的换行符。
下面的例子。
$ cat log.1
test
foo
Job-157625
20 Job-157625
$ gawk -vRS="\n20" '/Job-157625/' log.1
test
foo
Job-157625
Job-157625
$ gawk '/Job-157625/' log.1
Job-157625
20 Job-157625
$