정규 표현 식 Awk
2670 단어 문자열프로 그래 밍 언어표현 식gongshang
기본 개념:
BEGIND: 주 입력 순환 전에 실행
주 순환 :입력 파일 의 줄 을 처리 합 니 다.
END: 반복 실행 후 실행
기록 하 다. :입력 파일 의 줄 마다 기록 이 라 고 합 니 다.
도 메 인: 기 록 된 모든 문자열 을 도 메 인 이 라 고 합 니 다. 도 메 인의 분할 부 호 는 스페이스 바 나 tab 키 및 기타 지정 한 키 입 니 다. 기본 값 은 스페이스 바 입 니 다. tab 키 는 몇 개의 연속 적 인 스페이스 바 로 봅 니 다.
$1: 첫 번 째 도 메 인 표시
$2: 두 번 째 도 메 인 표시
$0: 모든 필드 표시
용법 1: 패턴 일치
awk '/모드 / {동작} ' 문건
[root@zhu1 ~]# nl zhu.txt
1 ming yue ji shi you.
2 ba jiu wen qing tian
3 bu zhi tian shang gong que goad
4 #jin xi shi he nian root oo*
5 #an good man
[root@zhu1 ~]# awk '/^#/{print "ni hao awk"}' zhu.txt
ni hao awk
ni hao awk
용법 2: 기본 값 과 분할 자 는 스페이스 바 입 니 다.
[root@zhu1 ~]# nl zhu.txt
1 ming yue ji shi you.
2 ba jiu wen qing tian
3 bu zhi tian shang gong que goad
4 #jin xi shi he nian root oo*
5 #an good man
[root@zhu1 ~]# awk '{print $1}' zhu.txt
ming
ba
bu
#jin
#an
-F :도 메 인 구분자 변경 가능
awk -F "구분자" '{ }' 문건
[root@zhu1 ~]# awk '{print $1}' zhu.txt
ming
ba
bu
#jin
#an
[root@zhu1 ~]# awk -F "s" '{print $1}' zhu.txt
ming yue ji
ba jiu wen qing tian
bu zhi tian
#jin xi
#an good man
$후 변수 사용 가능
[root@zhu1 ~]# awk '{print $3}' zhu.txt
ji
wen
tian
shi
man
[root@zhu1 ~]# awk 'BEGIN {m=1;n=2} {print $(m+n)}' zhu.txt
ji
wen
tian
shi
man
awk 관계 연산 자 및 그 의미
< :... 보다 작다
> :... 보다 크다
<= :이하
>= :... 보다 크다
== :... 과 같다
!= :같 지 않다
~ :정규 표현 식 일치
!~ :정규 표현 식 과 일치 하지 않 음
awk 를 이용 하여 ip 주 소 를 꺼 냅 니 다.
[root@zhu1 ~]# ifconfig eth0 | grep 'inet addr'|awk -F : '{print $2}'| awk '{print $1}'
192.168.1.107
정규 표현 식 의 용법 을 결합 하 다.
[root@zhu1 ~]# ifconfig eth0 | grep 'inet addr' | awk -F [:" "]+ '{print $4}'
192.168.1.107
두 번 째 용법:
[root@zhu3 ~]# ifconfig eth0 | awk -F [:" "]+ 'NR==2 {print $4}'
192.168.70.133
[root@zhu3 ~]# ifconfig eth0 | awk -F '[ :]+' 'NR==2 {print $4}'
192.168.70.133
[:" "] :: 또는 빈 칸 을 구분자 로 표시 합 니 다. + 앞 에 있 는 콜론 이나 빈 칸 을 표시 하 는 0 개 또는 1 개 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
비슷한 이름의 Attribute를 많이 만들어 삭제하는 Houdini사용 소프트웨어는 Houdini16.5입니다 배열에서는 애트리뷰트의 보간이 잘 동작하지 않는 것과 AttributeCreateSOP 노드에서 Size가 4를 넘는 애트리뷰트를 작성해도 값이 조작할 수 없어 의미가 없...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.