아래 출력의 3열에 있는 모든 필드가 정상이면 OK를 인쇄하고 싶습니다.
port mcg clk stat
------ ------- ----
OK EXTCLK1 OK
OK CLK3B OK
OK CLK3A OK
나는 이렇게 시도했다
a=`cat file2.txt | awk '{if ($1 == $3) {print "sync is OK";} else { print "sync is NOK";}}'`
echo "$a" > file3.txt
3번 조건이 충족되면 3번 인쇄가 가능한데 1번만 인쇄하고 싶습니다.
답변1
노력하다
awk 'BEGIN { ok=1 ; }
NR>2 { $3 != "OK" ; print "sync is NOK"; ok = 0 ; exit ; }
END { if ( ok ) print "sync is OK";} ' file2.txt > file3.txt
그러면 NOK/OK가 인쇄됩니다. (스크립트는 한 줄일 수 있습니다.)