0

我们都知道 awk 实用程序中有几个内置变量,例如 - NF、FS、NR 和位置变量,例如 $0 ...。我有一个 awk 脚本,我在其中使用 getline 功能来获取如下命令的输出:

 while ( ("ls -l" |& getline) > 0) {
}
 while ( ("ls -l" | getline) > 0) {
}
 while ( ("ls -l" |& getline) > 0) {
}
while ( ("ls -l" |& getline var) > 0) {
}

请让我知道我可以在 while 循环中推断出哪些 AWK 内置变量。我尝试访问 NR,但它总是给我 0?假设我想写如下内容:

while ( ("ls -l" |& getline) > 0) {
  if(NR == 1)
  {
      do something .. by parsing data via a Field Separator
  }
}
4

1 回答 1

1

请参阅http://awk.freeshell.org/AllAboutGetline并确保您完全理解它并在尝试使用 getline 之前有很多 awk 经验。您给出的示例几乎肯定不是使用 getline 的好选择。

于 2012-12-12T13:40:09.247 回答