php教程 PHP开发 AWK 명령 사용법 요약

AWK 명령 사용법 요약

Dec 15, 2016 am 10:21 AM
awk 명령

awk의 가장 기본적인 기능은 파일이나 문자열에 지정된 규칙을 기반으로 정보를 찾아 추출하는 것입니다. 처리를 위해 한 줄을 여러 "필드"로 나누는 데 사용됩니다. 작은 데이터 처리에 적합합니다.

예:

cat /etc/passwd | awk '{FS=":"}$3


실행 방법; as:

awk [-Field-separator] 'commands' 입력 파일

여기의 명령은 실제 ​​awk 명령이고, [-F 필드 구분 기호]는 선택 사항이며 awk는 공백을 사용합니다. 기본적으로 구분되어 있으므로 필드 사이에 공백이 있는 텍스트를 탐색하려면 이 옵션을 지정할 필요가 없지만 콜론을 각 필드의 구분 기호로 사용하는 passwd와 같은 파일을 탐색하는 경우 -F를 사용해야 합니다. 옵션: awk -F : 'commands' input -file


awk가 실행될 때 검색 태그는 $1, $2...$n이며 이 메서드를 domain이라고 합니다. 태깅. 첫 번째와 세 번째 필드를 참조하려면 $1과 $3을 사용하세요. 쉼표는 필드를 구분하는 데 사용되며 $0은 모든 필드를 사용한다는 의미입니다. 예:

awk '{print $0}' temp.txt > sav.txt

는 모든 필드를 인쇄하고 결과를 리디렉션하는 것을 의미합니다. sav.txt로 이동

awk '{print $0}' temp.txt | tee sav.txt

위의 예와 유사합니다. 하지만 화면에는 다르게 표시됩니다

awk '{print $1,$4}' temp.txt

첫 번째와 도메인 4


awk 'BEGIN {print "NAME GRADEn----"} {print $1"t"$4}' temp.txt


은 메시지 헤더를 나타냅니다. 즉, 입력 내용의 첫 번째 줄 앞에 "NAME GRADen------------"를 추가하고 동시에 콘텐츠는 탭으로 구분됩니다

awk 'BEGIN {print "being"} {print $1} END {print "end"}' temp

메시지 헤더와 메시지 트레일러를 동시에 인쇄



조건 연산자:


=, ~ 정규식과 일치, !~ 정규식과 일치하지 않음

일치: awk '{if ($4~/ASIMA/) print $0}' temp는 네 번째 필드에 ASIMA가 포함된 경우 전체

를 인쇄한다는 의미입니다. 정확한 일치: awk '$3==" 48" {print $0}' temp는 세 번째 필드가 "48"

과 일치하지 않는 레코드만 인쇄합니다. awk '$0 !~ /ASIMA/ ' temp는 ASIMA 없이 전체 레코드를 인쇄합니다.

의 레코드는 다음과 같지 않습니다: awk '$1 != "asima"' temp

다음보다 작음: awk '{if ($1

대소문자 설정: awk '/[Gg]reen/' temp 인쇄 Green 또는 green을 포함하는 전체 레코드

모든 문자: awk '$1 ~/^...a/' temp 첫 번째 필드의 네 번째 문자가 a인 레코드를 인쇄합니다. '^' 기호는 줄의 시작을 나타내며 '.'과 일치합니다.

또는 관계형 일치를 나타냅니다. awk '$0~/(abc)|(efg)/' temp |를 사용할 때 명령문은

AND 및 관계로 묶어야 합니다: awk '{if ( $1=="a" && $2=="b" ) print $0}' temp

OR 또는 관계: awk ' {if ($1=="a" || $1=="b") print $0}' temp

awk 내장 변수:

AWK 명령 사용법 요약

예: awk 'END {print NR}' temp 마지막에 읽은 레코드 수를 인쇄합니다

awk '{print NF, NR, $0} END {print FILENAME} ' temp

awk '{if (NR>0 && $4~/Brown/ ) print $0}' temp Brown을 포함하는 레코드가 하나 이상 있습니다

NF의 또 다른 사용법: echo $PWD | awk -F/ '{print $NF}' 현재 디렉토리 표시 name



실행 모드: awk '조건 유형 1 {Action 1} 조건 유형 2 {Action 2} ...' 파일 이름

# last | awk '{print $1 "t" $3}'

NF 각 행의 전체 필드 수($0)

NR awk가 현재 처리 중인 데이터의 "행 수"

FS는 구분 기호를 지정하며 기본값은 공백 키입니다.


더 많은 AWK 명령 사용법 요약 및 관련 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)