13 Security Lab

awk의 사용 본문

Computer Science/Programming

awk의 사용

Maj0r Tom 2013. 4. 25. 22:59

awk 의 사용


쉘스크립트에서 명령어로서 사용..


어떤 데이터 값들이 있을때 개행문자로 구분하여 필요한 부분을 가져온다.


test.txt안에 

 

안녕하세요 저는 프로그래머입니다.

그런데 어쩌구 저쩌구

테스트 할려고 이글써요.


이렇게 담겨있다면 이글은 공백문자와 개행문자로 구분되었다고 볼수있는데,

쉽게 설명하면 아래와 같다.


 안녕하세요 

 프로그래머입니다.  
 그런데   어쩌구   저쩌구
 테스트   할려고   이글써요.

이때 

 >> awk 'print $1' 를 하게 되면 

안녕하세요

그런데

테스트


위와 같이 나오게 된다.

즉, 가로행은 레코드, 세로행은 필드라하고 할때, 

직접 필드를 지정하여 값으로 출력 할 수 있는 것이다


아래와 같이예제를보면




위는, home directory를 출력하는 스크립트로


awk -F: '{print $1, $6}' /etc/passwd | grep -i "$args" 부분만 보면


 -F 옵션은 F다음에오는 캐릭터문자를 구분자로 사용하겠다는 말.

즉, ' : '를 구분자로 사용하겠다는말이다.


/etc/passwd

위의 디렉토리 경로 파일 내용에대해서 


'{print $1, $6}' 

1번 6번 필드를 출력한다는 말이고


 그 출력은 | 파이프 라인 뒤 명령어의 입력으로 넣는다는 의미.

즉,

| grep -i "$args"

  출력을 grep으로 전달하고 (pipe), awk 출력 중에서 args와 동일한 것만 취한다.

  “-i": ignore case (대소문자 무시)







또는 #!/bin/awk

로서 하나의 스크립트언어로 사용...




찾다 보니 더 

설명이 잘된것을 찾았다...


AWK







Awk 사용법 2




Comments