내 스크립트는 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를 호출하는 시스템(예: 쉘)을 호출할 필요가 없습니다.