본문 바로가기
조회 수 17799 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

1. 구성 : awk 는 패턴과 프로시저로 구성된다

            pattern {procedure}

            패턴을 지정하지 않으면 프로시저는 모든행에 적용된다

            프로시저를 지정하지 않으면 매치된 레트드가 표준출력된다

 

2. 패턴 : 문자열,숫자,연산자,함수, 시스템변수 등

            관계연산자, ~(매치하는 항목), !~(매치하지않는 항목)

 

3. 프로시저 : 개행문자나 세미콜론으로 구분, 중괄호({})안에 들어있는 함수 또는 변수 할당문 하나 이상으로 구성된다.

 

4. 사용예

          - 각 행의 첫번째 필드를 인쇄한다

             {print $1}

         - 패턴이 들어 있는 모든 행을 인쇄한다

             /pattern/

         - 패턴을 포함하는 행의 첫번째 필드를 인쇄한다

             /pattern/ {print $1}

         - 문자의 갯수가 20개 이하인 행을 찾아서 인쇄한다

            length($0) < 20

             END {print "column total is", total}

         - Name으로 시작하고 필드가 7개 들어있는 행을 인쇄한다

            NF = 7 && /^Name:/

 

5. 변수

    - FILENAME : 현재 파일명

    - FS            : 필드 구분자,기본 값은 공백

    - NF(Number of field) :  현재 레코드의 필드 갯수

    - NR(Number of Record) : 현재 레코드 갯수

    - RS(Record Separator)  : 기본값 개행문자, 레코드 구분자

    - $0 : 전체 입력 레코드

    -$n : 현재 레코드의 n번째 필드


사용예


- 'gold' 문자가 들어간 행을 모두 화면에 출력한다.

   awk '/gold/'    or   awk '/gold/ {print $0}'

 

-  sample.tr 파일에서, 3번째 열 값이 1908보다 작을 경우 3번째 열을 모두 화면에 출력한다.

   awk '{if ($3 < 1908) print $3}' sample.tr

 

- sample.tr 파일에서, 3번째 열 값이 1908보다 작고, 4번째 열 값이 1950보다 작으면, 5번째 열을    output.txt 파일에 저장한다.

   awk '{if ( ($3 < 1908) && ($4 < 1950) ) print $5}' sample.tr > output.txt

 

- sample.tr 파일에서, 1번째 열 값이 문자 "r" 일 경우 10,11,12번째 열을 output.txt 파일에 저장한다.

   awk '{if ($1 == "r") print $10,$11,$12}' sample.tr > output.txt


출처 : http://blog.naver.com/hanio?Redirect=Log&logNo=40022204015
http://blog.naver.com/ky_kang?Redirect=Log&logNo=60061801278



Title
List of Articles
번호 제목 글쓴이 날짜 조회 수
448 /boot 파티션 손상시 복구 방법 Hojung 2011.01.07 27908
447 /proc/meminfo 내용 설명 Hojung 2011.01.07 21979
446 1.txt ~ 999.txt 파일명을 001.txt ~ 999.txt 로 변경하기 Hojung 2010.12.31 17294
445 10 Ways to Generate a Random Password from the Command Line Hojung 2014.11.16 6063
444 18 commands to monitor network bandwidth on Linux server file Hojung 2014.04.13 10069
443 20 Linux System Monitoring Tools Every SysAdmin Should Know (Cool!) Hojung 2009.10.20 12423
442 59 Open Source Tools That Can Replace Popular Security Software Hojung 2011.06.16 22371
441 A simple Linux backup method Hojung 2010.11.25 21296
440 About initrd from Wikipedia Hojung 2008.01.06 17264
439 Add arguments from previous command Hojung 2011.08.22 16806
438 Advanced SSH security tips and tricks Hojung 2011.08.18 14347
437 Apaceh2 + SSL on Fedora Core Hojung 2007.12.14 46670
436 Apache 2 with SSL/TLS (https) Hojung 2012.07.20 9737
435 Apache 2 with SSL/TLS: Step-by-Step, Part 1 Hojung 2007.12.14 16849
434 Apache2 + MongoDB + ElasticSearch + Kibana file Hojung 2014.03.16 13303
433 APM (Apache + PHP + MySQL) with phpmyadmin in CentOS VM Hojung 2014.11.16 7040
432 ARP Spoofing 감지하기 (arpwatch) Hojung 2011.01.14 25853
431 arping Hojung 2007.11.18 25784
430 ATI x1300 on Fedora Core 10 Hojung 2009.04.20 22297
» awk 명령어 간단 사용법 Hojung 2009.03.11 17799
Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 ... 23 Next ›
/ 23

Designed by sketchbooks.co.kr / sketchbook5 board skin

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5