리눅스/awk

awk -v

Aif 2023. 8. 24. 12:27

awk -v 는 전역 변수를 설정 해준다고 보면 될것같다.

 

testawk.txt를 보면 cnt 라는 변수가 있는데 사실  선언이 되어있지않다.

 {
  2     NAME=$1;
  3     USE=$5;
  4     MNT=$6;
  5
  6     if(cnt==0){
  7         print "-----------------------------------------------------";
  8         cnt++;
  9     }
 10     if(USE>5) {
 11         print "Memmory Over !! >> ",NAME, USE, MNT;
 12     }
 13 }

원래라면 오류가 나겠지만 왠일인지 실행이 잘된다. 디폴트로 선언이 되나보다.

 

그래도 -v 옵션으로 설정을 해주는것이 좋을 것 같다.

 

df -h | awk -f 'testawk.txt' -v cnt=0

df -h | awk -f 'testawk.txt' -v cnt=1

두 차이를 확인해본다.