[Linux 편] - awk 의 사용

앞에서 말 하 다
awk 는 강력 한 텍스트 분석 도구 입 니 다.grep 의 검색, sed 의 편집 에 비해 awk 는 데이터 분석 과 보고 서 를 생 성 할 때 특히 강하 다.쉽게 말 하면 awk 는 파일 을 한 줄 씩 읽 는 것 입 니 다. (빈 칸, 탭 문자) 는 기본 구분자 로 각 줄 을 자 르 고 자 른 부분 을 여러 가지 분석 처리 합 니 다.
구체 적
1. 기초 지식 포인트
awk - F '{pattern + action}' {filenames} 사용자 정의 구분자 지원 정규 표현 식 일치 지원 사용자 정의 변수, 배열  a[1]  a[tom]  map (key) 내장 변수 ARGC 지원               명령 행 매개 변수 개수 ARGV               명령 행 매개 변수 배열 ENVIRON            대기 열 에서 시스템 환경 변수의 사용 을 지원 합 니 다 FILENAME           awk 탐색 파일 이름 FNR                파일 을 탐색 하 는 기록 수 FS                 입력 필드 구분 자 를 설정 합 니 다. 명령 행 - F 옵션 NF 와 같 습 니 다.                 기 록 된 도 메 인 갯 수 NR 탐색                 읽 은 기록 수 OFS                출력 영역 구분자 ORS                출력 기록 구분자 RS                 제어 기록 구분자 지원 함수 print, split, substr, sub, gsub 지원 프로 세 스 제어 문, 클래스 C 언어 if, while, do / while, for, break, contine
$0 은 모든 도 메 인 을 표시 합 니 다. $1 은 첫 번 째 도 메 인 을 표시 하고 $n 은 n 번 째 도 메 인 을 표시 합 니 다.기본 도 메 인 구분자 가 스페이스 바 나 tab 키 입 니 다.2. 예 를 들 면
/ etc / passwd 만 표시 되 는 계 정: CUTawk - F ':' {print $1} 'passwd 는 / etc / passwd 의 계 정과 계 정 에 대응 하 는 셸 만 표시 하고 계 정과 셸 은 쉼표 로 분할 되 며 모든 줄 이 시작 되 기 전에 열 이름 name, 셸 을 추가 합 니 다. 마지막 줄 에' blue, / bin / nosh '(cut, sed) awk - F': 'BEGIN {print' name, shell '} {print $1', '$7} END {print' blue, / bin / nosh '}'passwd 검색 / etc / passwd 루트 키워드 가 있 는 모든 줄 awk'  '/root/ { print $0}'   passwd 통계 / etc / passwd 파일 에서 줄 마다 줄 번호, 줄 마다 열 수, 해당 하 는 전체 줄 내용
xxx     Math English C++  Experiment
Monkey  100   90     95   Good
Cat     80    100    60   Perfect
Dog     90    60     70   Great
Tiger   95    85     90   Fantastic

 
    Administrator@51B6904C3C8A485 ~/learn_awk  
    $ awk '{print $2}' test.txt  
    Math  
    100  
    80  
    90  
    95  
      
    Administrator@51B6904C3C8A485 ~/learn_awk  
    $  

 
 이 블 로 그 를 보 세 요. 잘 했 어 요.https://blog.csdn.net/stpeace/article/details/46848873

좋은 웹페이지 즐겨찾기