반응형
목차
[Linux]리눅스 grep 검색이란?
리눅스에서 grep을 사용해서 쉽게 검색을 할 수 있습니다. grep은 정규 표현식(Regular expression)을 사용하기 때문에 간단한 정규 표현식을 사용한다면 검색이 용이 합니다.
이번 시간에 grep의 옵션 및 기본 정규 표현식 사용 방법 및 간단한 예제 실습을 진행해 보겠습니다.
우선 grep의 사용방법은 아래와 같습니다.
grep 옵션 '정규표현식' 파일명
옵션은 아래와 같습니다.
- -i : 대소문자 구분 없이 검색
- -n : 일치하는 줄과 그 줄 번호를 같이 보여줌
정규 표현식 기본 표현
아래는 정규 표현식 사용의 기본 표현을 정리한 내용입니다.
- * : 별표 앞의 문자가 0개 이상 존재
- . : 하나의 문자
- ^ : 시작하는 문자와 대응
- $ : 끝 문자와 대응
- [] : 괄호안 범위에 대응
아래 예제를 통해 쉽게 알아보겠습니다.
grep 예제 실습(별표, 점, 꺽쇠, |)
예제에 사용할 텍스트 파일은 아래와 같습니다.
예제 코드1 : .(점, 닷트) 사용>>
fam@raspberrypi:~/linux_test $ grep 'e..o' test02.txt
Hello World!!!
fam@raspberrypi:~/linux_test $ grep -n 'e..o' test02.txt
1:Hello World!!!
fam@raspberrypi:~/linux_test $
위와 같이 .을 사용해서 일치하는 구문을 찾아 몇번째 줄에 있는지 까지 표기 하였습니다.
예제 코드2 *(별표) 사용>>
fam@raspberrypi:~/linux_test $ grep 'n*a' test02.txt
my name
my class
fam@raspberrypi:~/linux_test $
위 명령은 n 문자가 적어도 0개 이상 존재하면서 다음에 a가 나오는 경우 입니다.
예제 코드3 ^(꺽쇠) 사용>>
fam@raspberrypi:~/linux_test $ grep '^ye' test02.txt
fam@raspberrypi:~/linux_test $ grep '^my' test02.txt
my name
my class
ye로 시작하는 문장은 없어서 결과가 출력되지 않고 my로 시작하는 문장은 아래와 같이 나왔습니다.
예제 코드4 [](괄호), | 사용, AND 검색>>
fam@raspberrypi:~/linux_test $ cat test02.txt | grep 'H[a-z]'
Hello World!!!
fam@raspberrypi:~/linux_test $ cat test02.txt | grep '^my' | grep 'c*s'
my class
1번 라인: | 기호를 사용해서 파일을 검색합니다
3번 라인: and 방식으로 검색하고 싶을 경우 | 를 계속 추가해서 검색하시면 됩니다.
예제 코드5 OR 검색>>
fam@raspberrypi:~/linux_test $ cat test02.txt | grep -e '^my' -e 'c*s'
my name
my class
1번 라인: 검색할 패턴(pattern) 앞에 소문자 e를 붙이면 or로 검색 됩니다.
반응형
'라즈베리파이(Raspberrypi)' 카테고리의 다른 글
[Linux]리눅스 프로세스 포그라운드, 백그라운드란? 사용방법(foreground, background, kill, ps, process) (0) | 2022.07.27 |
---|---|
[Linux]리눅스 시스템 자원, 메모리, 프로세스 사용량 확인하기(모니터링) (0) | 2022.07.26 |
[Linux] 리눅스 사용자 권한 정의 및 변경(chomod, read, write, execute, 읽기, 쓰기, 실행) (0) | 2022.07.18 |
[Linux] 리눅스 파일 생성, 삭제, 이동, 복사 사용법(touch, cat, cp, rm, mv) (1) | 2022.07.14 |
[Linux]리눅스 ls, cd, pwd 명령어(파일 목록 보기, 디렉토리 이동 위치) (0) | 2022.07.13 |