Linux 상용 기본 명령: 삼 총사 명령 의 - awk 배열 용법

AWK 의 배열 용법 은 자바 script 과 유사 합 니 다.1, 정의 배열
awk 'BEGIN{a[0]="zhangsan";a[1]="lisi";print a[0]}'

2. 정의 되 지 않 은 배열 항목 을 인쇄 합 니 다. 값 이 비어 있 습 니 다.
awk 'BEGIN{a[0]="zhangsan";a[1]="lisi";print a[2]}'

3. 하나의 배열 항목 이 존재 하 는 지 판단 하고 (아래 에 배열 로 표시)
root$ awk 'BEGIN{a[0]="zhangsan";a[1]="lisi"; if( 1 in a ) print a[1]; }'
lisi

4. 배열 도 관련 색인 으로 정의 할 수 있 습 니 다.
root$ awk 'BEGIN{a["name"]="  ";a["name2"]="  ";print a["name"]}'
  

5, delete: 배열 항목 이나 배열 삭제
root$ awk 'BEGIN{a["name"]="  ";a["name2"]="  ";print a["name"]; delete a["name"]; print       a["name"]; }'
  

root$ awk 'BEGIN{a["name"]="  ";a["name2"]="  ";print a["name"]; delete a["name"]; print      a["name2"]; }'
  
  
root$ awk 'BEGIN{a["name"]="  ";a["name2"]="  ";print a["name"]; delete a; print  a["name2"]; }'
  

6. 숫자, 문자열 은 모두 산술 연산 을 할 수 있다.
존재 하지 않 는 요소 가 산술 연산 에 참여 할 때 0 으로 간주 되 고 하나의 요소 가 문자열 로 간주 되 며 산술 연산 에 참여 할 때 0 으로 간주 된다.
root$ awk 'BEGIN{ a = 1; print a; a = a + 1; print a }'
1
2
root$ awk 'BEGIN{ a = "ghostwu"; a = a + 1; print a }'
1
root$ awk 'BEGIN{ print a[0]; a[0] = a[0] + 1; print a[0] }'
 
1

7. 특정한 문자열 이 나타 나 는 횟수 를 통계 합 니 다.
root$ awk '{count[$2]++} END{ for( i in count ) { print i,count[i]; } }' host.txt 
192.177.81.1 1
10.0.0.5 3
192.168.9.254 1
192.168.1.1 3
192.168.3.98 2
root$ cat host.txt 
host1    192.168.1.1
host2    192.177.81.1
host3    10.0.0.5
host4    192.168.3.98
host5    192.168.3.98
host6    192.168.9.254
host7    192.168.1.1
host8    192.168.1.1
host9    10.0.0.5
host10    10.0.0.5

좋은 웹페이지 즐겨찾기