0

awk 中的NF,RF​​ ,等词(可能是变量?)是什么意思?FS我相信它们有一些预先定义的含义和用法。

请让我知道,如果初学者必须知道更多这样的变量?

-谢谢

4

1 回答 1

1

这些是内置变量,在 awk 中它们具有特殊含义。GAWK 参考手册中有部分内容涵盖了该主题。尤其:

FS

这是输入字段分隔符(请参阅字段分隔符)。该值是与输入记录中的字段之间的分隔符匹配的单字符串或多字符正则表达式。如果该值为空字符串 (""),则记录中的每个字符都将成为一个单独的字段。(此行为是 gawk 扩展。POSIX awk 未指定 FS 为空字符串时的行为。尽管如此,其他一些版本的 awk 也对 "" 进行了特殊处理。)

默认值为“”,由一个空格组成的字符串。作为一个特殊例外,此值意味着任何空格、TAB 和/或换行符的序列都是单个分隔符。它还会导致忽略记录开头和结尾处的空格、制表符和换行符。

NF

当前输入记录中的字段数。每次读取新记录、创建新字段或 $0 更改时都会设置 NF(请参阅字段)。

与本节中描述的大多数变量不同,为 NF 赋值可能会影响 awk 的内部工作。特别是,分配给 NF 可用于从当前记录中创建或删除字段。请参阅更改字段。

于 2012-08-25T13:48:06.067 回答