在 awk 期间读出文件

在 awk 期间读出文件

我的脚本使用 awk 连续读取文件并评估输入数据。现在我需要读取和写入输出文件的第一行。有信息,哪一行是什么(第一个传感器的°C,第二个传感器的°C)等。

我尝试过这样的:

awk '
{
    System("awk 'if(NR==1){print $0}' \"OutputFile\"" | getline result)
    print result " it worked" #Print First line
}
' "InputFile"

如果没有 System("...") 和字符串中的反斜杠,它会返回正确的值:

awk 'if(NR==1){print $0}' "OutputFile"

但看来我在行内犯了一些错误。捕获这一行的正确语法是什么?是否还有更简单的解决方案?

答案1

尝试

awk '{ getline result < "OutputFile" ;
     print result " it worked" #Print First line
  } ' "InputFile"

无需调用在 awk 内调用 awk 的系统(例如 shell)。

相关内容