반응형
grep: 텍스트 검색 기능을 가진 명령어
1. 파일에서 검색
# test.txt 파일에서 'a'가 포함된 텍스트만 검색
grep a /text.txt
2. 명령 결과에서 검색
# ps aux 명령어에서 'pts'가 포함된 텍스트만 검색
ps aux | grep 'pts'
[ grep 옵션 ]
옵션 | 기능 |
-i | 제공된 정규 표현식을 사용 단, 대소문자를 구분하지 않음(대소문 자 구분 없이 실행) |
-v | 정규 표현식과 일치하는 항목이 없는 행만 표시 |
-r | 정규 표현식과 일치하는 데이터를 파일 그룹 또는 디렉터리에서 반복적으로 검색 |
-A NUMBER | 정규 표현식과 일치하는 항목 다음의 행 수를 표시 |
-B NUMBER | 정규 표현식과 일치하는 항목 앞의 행 수를 표시 |
-e | 여러 개의 -e 옵션을 사용하면 복수의 정규 표현식을 제공할 수 있으며, 논리 OR과 함께 사용 |
# i 옵션 유무 비교
/etc/crontab 파일에서 대소문자 구분 없이 출력
[ Bash 정규표현식 ]
옵션 | 설명 |
. | 마침표(.)는 모든 단일 문자와 일치 |
? | 앞의 항목이 선택 사항이며 최대 한 번만 일치 |
* | 앞의 항목이 0번 이상 일치 |
#ERROR! | 앞의 항목이 1번 이상 일치 |
{n} | 앞의 항목이 정확히 n번 일치 |
{n,} | 앞의 항목이 n번 이상 일치 |
{m,} | 앞의 항목이 최대 m번 일치 |
{n,m} | 앞의 항목이 n번 이상, 최대 m번 일치 |
[:alnum:] | 영숫자 문자 [:alpha:] 및 [:digit:] 'C' 로케일과 ASCII 문자 인코딩 에서는 이 표현식이 [0-9A-Za-z]와 같다. |
[:alpha:] | 알파벳 문자 [:lower:] 및 [:upper:] 'C' 로케일과 ASCII 문자 인코딩 에서는 이 표현식이 [A-Za-z]와 같다. |
[:blank:] | 공백 문자(공백 및 탭) |
[:cntrl:] | 제어 문자 ASCII에서 이러한 문자의 8진수 코드는 000~037 및 177(DEL)이다. |
[:digit:] | 숫자 0 1 2 3 4 5 6 7 8 9 |
[:graph:] | 그래픽 문자 [:alnum:] 및 [:punct:] |
[:lower:] | 소문자 'C' 로케일 및 ASCII 문자 인코딩에서는 a b c d e f g h i j k l m n o p q r s t u v w x y z |
[:print:] | 출력 가능한 문자는 [:alnum:], [:punct:], 공백 |
[:punct:] | 문장 부호 문자 'C' 로케일 및 ASCII 문자 인코딩에서는 ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ' { | } ~ |
[:space:] | 공백 문자 'C' 로케일에서는 탭, 줄 바꿈, 세로 탭, 용지 공급, 캐리지 리턴, 공백 |
[:upper:] | 대문자: in the 'C' locale and ASCII character encoding: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
[:xdigit:] | 16진수 0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f |
\b | 단어의 가장자리에 있는 빈 문자열과 일치 |
\B | 단어의 가장자리가 아닌 위치에 있는 빈 문자열과 일치 |
\< | 단어의 시작 부분에 있는 빈 문자열과 일치 |
\> | 단어의 끝 부분에 있는 빈 문자열과 일치 |
\w | 단어 구성 요소와 일치 [_[:alnum:]]의 동의어 |
\W | 비단어 구성 요소와 일치 [^_[:alnum:]]의 동의어 |
\s | 공백과 일치 '[[:space:]]`의 동의어 |
\S | 비공백과 일치 [^[:space:]]의 동의어 |
# grep -v 옵션과 [[:digit:]] 정규표현식 사용
[위 내용은 Redhat의 공인 교육과정 내용 중 일부를 정리한 글입니다.]
반응형
'RedHat 시스템관리' 카테고리의 다른 글
시스템 성능 튜닝 ①tuned: 시스템 성능 최적화 (3) | 2023.03.23 |
---|---|
작업 예약 ③Anacron을 사용해서 정기적으로 작업 예약하기(anacrontab) (0) | 2023.03.23 |
작업 예약 ②at 명령어: 특정 시간 이후에 실행하는 작업 예약하기(반복x 단일 작업) (0) | 2023.03.23 |
작업 예약 ①crontab 명령어: 반복 작업 스케줄 예약하기 (0) | 2023.03.23 |
bash 스크립트 작성 방법: 반복문(for) 및 조건문(if) 사용해보기 (0) | 2023.03.23 |