본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
원본 문서에서 패턴을 검사해 원하는 값을 얻는다.
  • 유닉스와 리눅스 모두에서 명령어와 옵션이 같음
  • 경로 : /bin/awk
awk [옵션] -F 'script' [변수=값] [파일]
awk [옵션] -f 스크립트파일 [변수=값] [파일]
  • 스크립트 파일 : awk 스크립트로 작성된 파일
  • 변수 : awk 내의 변수를 지정한다.
  • 파일 : 대상 파일
  • -F : 구분자를 나타낸다. -F로 구분자를 지정하지 않을 경우에는 공백을 구분자로 사용한다.
  • -f : 스크립트 파일을 이용할 경우 사용한다.

awk 는 줄을 필드로 나눠 원하는 열을 뽑고 세는 데 강해 로그 분석에 많이 쓴다.

$ awk '{print $1}' access_log | sort | uniq -c | sort -rn | head    # 접속 IP 별 요청 수
$ awk -F: '$3 == 0 {print $1}' /etc/passwd                         # UID 가 0 인 계정
$ awk '/Failed password/ {print $(NF-3)}' /var/log/secure | sort | uniq -c   # 로그인 실패 출발지
  • 같은 문자열 처리 도구로 grep(패턴이 든 줄 찾기), wc(줄·단어 수 세기), sed(치환)가 있다. nohup 은 문자열 처리가 아니라 로그아웃 뒤에도 프로세스를 계속 돌리는 명령이다