디렉토리 1. Grep 명령 소개 2. 문장 형식 및 공통 옵션 3. 참고 사례 3.1 파일에서 루트로 시작하는 파일 검색 3.2 파일에 나타나는 루트 검색 3.3 일치하는 줄 이외의 줄만 검색 3.4 일치하는 부분 사용 표시할 색상 3.5 파일에서 일치하는 위치만 출력 3.6 일치하는 문자열이 포함된 행을 출력하고 행 수 표시 3.7 일치하는 문자열이 포함된 행 수에 대한 통계 파일 또는 텍스트 요약
1. grep 명령 소개 Linux 시스템의 grep 명령은 정규식을 사용하여 텍스트를 검색하고 일치하는 줄을 복사할 수 있습니다.
grep의 전체 이름은 GlobalRegularExpressionPrint이며, 이는 전역 정규식 버전을 나타냅니다. 사용 권한은 모든 사용자에게 있습니다.
중국어 주석:
grep['grep]검색 대상 라인 명령·글로벌[?glo?bl]글로벌, 필라멘트 정규미[?r?ɡj?l?]정규, 정규, 정규군(n)표현미[? k?spr?? ?n]표정,표정,표정,안색,멘탈
예: 몸에 젖을 정도라면 표현을 용서해주세요
Linux는 세 가지 방식의 grep 명령을 지원합니다: grep, egrep, grep-E
2. 문장 형식 및 공통 옵션 관례에 따라 여전히 도움말을 먼저 확인하고 grep --help를 사용합니다
으아악
더 직관적이기 위해 일반적으로 사용되는 매개변수를 표에 표시합니다.
매개변수 설명 -i 대소문자 무시 -E POSTIX 확장 정규식 활성화 -P Perl 정규식 활성화 -o 정규식과 일치하는 내용만 출력 -w 전체 단어 일치 -v 부정, 즉 일치하지 않는 경우 -n 출력 줄 뒤 number에는 특정 매개변수가 있습니다. 실제 사례를 살펴보겠습니다.
3. 참고사례
3.1 루트로 시작하는 파일 검색 ^root를 사용하면 /etc/passwd에서 루트로 시작하는 파일을 볼 수 있습니다.
으아악
3.2 파일에 나타나는 루트에서 특정 문구를 검색하려면 grep 앞에 있는 단어 이름을 직접 따라가면 됩니다.
사례 1: /etc/passwd
에서 루트 사용자를 검색하세요.으아악
사례 2: 여러 파일에서 루트 검색
으아악
3.3 일치하는 줄이 아닌 다른 줄을 검색합니다. 여기에는 부정
과 같은 -v 매개변수를 사용합니다.사례 1: 파일의 줄 수를 세고 빈 줄을 포함하지 마세요
빈 줄 표현: ^$
으아악
때때로 구성 파일을 변경하는데 파일에 #이 많이 포함되어 있습니다. 내용을 보기 위해 #을 제거하려면
를 사용할 수 있습니다.
[root@mufenggrow ~]# grep -v ^# passwd |wc -l 35
3.4匹配的部份使用颜色显示这儿可以使用--color=auto,我们来查看一下包含root的行linux cat grep 匹配linux cat grep 匹配,并高亮显示要查找的root。
[root@mufenggrow ~]# grep root /etc/passwd--color=auto root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin [root@mufenggrow ~]#
这样显示,疗效不显著,我们看右图:
可
以看见,所有的root都是蓝色表示的。
3.5只输出文件中匹配到的地方例如我们要查询root,但我不想显示包含root的行RAR FOR LINUX,而是只显示要查询的内容:
此时须要使用-o参数,代码如下
[root@mufenggrow ~]# grep -o root /etc/passwd root root root root
要注意,假若一行中有10个root,这儿就显示10个,而不是只显示一个,所以3.4的案例中我们查询的时侯红帽子linux下载,包含root的有两行,但有4个root,在3.5案例中,显示了所有的root。
3.6输出包含匹配字符串的行,并显示所在的行数此处可以使用-n参数,-n会在一行的后面加上行号:例如“4:”
我们来看下代码示例:
[root@mufenggrow ~]# grep -n "root" passwd 1:root:x:0:0:root:/root:/bin/bash 11:operator:x:11:0:operator:/root:/sbin/nologin
我们要统计一个文件一共有多少行,也可以使用-n参数
root@mufenggrow ~]# grep -n "" passwd |awk -F : '{print $1}' |tail -n 1 35
3.7统计文件或则文本中包含匹配字符串的行数此时可以用-c参数:
[root@mufenggrow ~]# grep -c "root" passwd 2
包含root的有两行,假如我们要统计文本的行数:
[root@mufenggrow ~]# grep -c "$" passwd 35
相当于查找$的行数,可以见到一共有35个$符号,也就是35行。
总结grep命令在日常工作中,应用的比较广泛,一定要认真学习,记熟记牢常用参数。
到此这篇关于linux中grep命令使用实战解读的文章就介绍到这了,更多相关linuxgrep命令内容请搜索曾经的文章或继续浏览下边的相关文章希望你们之后多多支持!
위 내용은 Linux 시스템에서 grep 명령어의 실제 사례 분석 및 참고 사례 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!