bool
다른 프로그래밍 언어에는 일반적으로 or 유형이 있습니다 boolean
. 부울 유형 변수를 생성하고 not
연산자를 사용하여 이를 전환할 수 있습니다. 여러 번 전환하여 일련의 참, 거짓, 참, 거짓을 얻을 수 있습니다.
awk에는 부울 유형이 없습니다. 빈 문자열과 숫자 0만 false로 간주됩니다. 다른 모든 값은 true입니다. 이 경우 1, 3, 5번 라인에서 A 작업을 수행하고 2, 4, 6번 라인에서 B 작업을 수행하려면 어떻게 해야 합니까? 부울 유형 변수가 있고 간단히 다음과 같이 not
말할 수 있습니다.
답변1
바라보다awk '!a[$0]++'는 어떻게 작동하나요?
기본적으로 이것을 사용하면 0에서 1로, 1에서 0으로 가는 것이 a=!a
무효화됩니다 .a
당신은 테스트할 수 있습니다
ls | awk '{a=!a; if ( a ) printf "good %s\n",$0 ; else printf "bad\n";}'