![gawk 命令行上的 vRS="\n20" 是什么意思?](https://linux22.com/image/68529/gawk%20%E5%91%BD%E4%BB%A4%E8%A1%8C%E4%B8%8A%E7%9A%84%20vRS%3D%22%5Cn20%22%20%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%EF%BC%9F.png)
任何人都可以解释一下以下命令:
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
$