로그인
Sign in
텍스트 파일의 전체 라인수를 계산

# cat /etc/passwd | awk ‘END {print NR}’

# awk ‘END {print NR}’ /etc/passwd

      텍스트 파일의 특정번째 라인의 문자열을 프린트

# awk ‘NR ==10’ /etc/passwd

# cat /etc/passwd | awk ‘NR==10’

      각 라인의 맨끝 단어(필드)를 프린트

# bdf | awk ‘{print $NF}’

      마지막 입력 라인의 마지막 필드를 프린트

# bdf | awk ‘{field = $NF} END {print field}’

      4개 이상의 필드(단어)를 가지고 있는 라인을 프린트

# bdf | awk ‘NF > 4’

      'fly'를 포함하고 있는 라인의 총수 계산

# awk ‘/fly/ {nlines = nlines +1 } END {print nlines}’ /etc/passwd

      가장 긴 첫번째 필드(단어)와 그 해당 라인을 출력

# awk ‘$1 > max{max = $1; maxline=$0} END {print max,maxline} /etc/passwd

     구분자를 “:” 로 하여 첫번째 필드를 프린트

# awk ‘FS=”:” {print $1}’ /etc/passwd

      80문자 이상을 가진 모든 라인을 프린트

# awk ‘length($0) > 80’ <FILENAME>

     필드의 갯수와 해당 라인을 프린트

# awk ‘{print NF,$0}’ <FILENAME>

     첫번째 두 필드를 반대로 프린트

# awk ‘FS=”:” {print $2, $1}’ /etc/passwd

     첫번째 두 필드를 반대로 바꾼 다음, 그 라인을 프린트

# bdf | awk ‘{temp=$2; $1=$2’ $2=temp;print}’

     첫번째 필드는 라인 번호로 대체하여 그 라인을 프린트

# awk ‘FS=”:” {$1=NR;print}’ /etc/passwd

     두번째 필드는 삭제한 후 라인을 프린트

# bdf | awk ‘{$2=””;print}’

     각 라인의 모든 필드를 역순으로 프린트

# bdf | awk ‘{for (i=1;i<=NF;i=i+1) printf(“%s”,$i) printf(“\n”)’

     각각의 라인에 대하여 각 필드를 더한 값을 프린트

# awk ‘{sum=0

for (i=1;i<=NF;i=i+1)

sum=sum+$i

}’ <FILENAME>

     모든 라인에 존재하는 필드를 모두 더한 값을 프린트

# awk ‘{ for (i=1;i<=NF;i=i+1) sum=sum+$i } END { print sum }’ <FILENAME>



    AWK 의 system variable

       awk     FILENAME        현재파일명

       FS              필드 구분자
       NF              현재라인의 필드 수
       NR              현재라인의 레코드 번호
     OFMT            숫자 출력을 위한 포맷(예를 들어  %.6g)
       OFS             출력 필드 구분자(디폴트는 blank)
       ORS             출력 레코드 구분자(디폴트는 newline)
       RS              레코드 구분자(디폴트는 newline)
       $0              전체 입력라인
      $n              n번째 필드의 내용(각 필드는 FS로 구분된다.)  
조회 수 :
999
추천 수 :
5 / 0
등록일 :
2008.03.18
14:57:04 (*.236.3.225)
엮인글 :
http://bestceok.com/xe/index.php?mid=unix_com&document_srl=2765&act=trackback&key=422
게시글 주소 :
http://bestceok.com/xe/index.php?mid=unix_com&document_srl=2765
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 자주 사용하는 명령어 제비게릴라 2019-06-27 179
112 현재 메모리를 가장 많이 사용하는 상위 프로세스 5개의 사이즈, PID, 프로세스이름을 찾아내고자 합니다. 방법은 ? 하록 2008-04-15 481
111 IDS처럼 시스템에 로그인하는 모든 유저의 명령어를 각 파일로 남겨두고자 합니다. 하록 2008-04-15 388
110 FC카드(A6885A/A6884A/A5158A/A6795A )의 LED를 통한 카드 상태확인방법. 하록 2008-04-15 632
109 cstm을 이용하여 logtool data를 취합하는 방법은. 하록 2008-04-15 417
108 LAN Console 설정 방법 하록 2008-04-15 480
107 top으로 보면 각각의 프로세스가 나오는데, 이를 파일로 받으면 정상적으로 받혀지지 않고 한줄로 이어져서 깨져 버립니다. 하록 2008-04-15 476
106 ps -ef 로 보면 command부분이 잘려 나와서 어떤 파일을 사용중인지 알수가 없습니다. 볼수 있는 방법은? 하록 2008-04-15 460
105 Network 관련하여 MTU size를 조정하고 싶습니다. 어떻게 하는지요? 하록 2008-04-15 915
104 appliaction사용시 core dump난 부분에 대한 정보를 얻으려면? 하록 2008-04-15 437
103 syslog.log 파일에 ftp 로그 빼는 방법... 하록 2008-04-15 1064
102 HP-UX에서 Network Printer (Laserjet 5000 series) 설정법 하록 2008-04-11 1436
101 특정 포트를 점유하는 프로그램 확인 하록 2008-04-04 1916
100 nettl / netfmt 명령어 하록 2008-03-18 1573
» awk의 사용 예... 하록 2008-03-18 999
98 GSP에서 Chassis Log를 자세히 보는 방법, 시스템의 Console에서 History기능이 안 될 경우 대처법, 슈퍼돔의 Main Menu에서 CM 으로 들어갔을 때의 중요한 Command 등 하록 2008-03-18 805
97 fcmsutil 커맨드의 사용례 [5] 하록 2008-03-18 5145
96 어떤 user가 어떤 command를 사용하는지 trace 할때 유용하게 사용할 수 있는 방법 하록 2008-03-18 550
95 syslog화일을 remote서버에 기록하는 방법 하록 2008-03-18 492
94 MWA를 이용한 HPUX 자원사용현황 보고서 file 하록 2008-03-18 1136
93 L/N 클래스 시스템에서 GSP/웹 콘솔을 재설정하려면 어떻게 해야 합니까? 하록 2008-03-10 472