리눅스 grep 명령어

리눅스 grep 명령어는 로그 파일과 같은 텍스트 파일과 아스키 파일에서 원하는 문자열을 찾을 때 사용되며, tail과 find 명령어를 파이프(|)와 결합해서 자주 사용하게 되는 명령어입니다.

  • grep 명령어
  • 파일 내의 특정 문자열을 찾을 때 사용됩니다.
  • grep 명령은 global / regular expression / print 에서 각각의 머릿글자를 따 왔음
  • ls, tail, find 명령어와 조합해서 자주 사용.
  • find와 같은 명령어를 사용한 후 원하는 결과 값만 출력할 수 있음.
  • 패턴은 찾고자 하는 문자열이나 정규 표현식으로 grep은 특정 파일의 지정한 문자열 및 정규 표현식을 활용한 행을 출력해 주는 명령어
  • 텍스트 처리&검색 명령어&스크립팅 명령어

✅ grep 명령어 기본 사용법

grep [-옵션] [패턴] [파일명]
다른 명령어 | grep [-옵션] [패턴] [파일명]

✅ 기본적인 사용 예

# access_log에서 403 에러 찾기 | 현재 폴더에서 403 에러 찾기 > grep 403 ./* | grep 430 *.log
~]# grep 403 access_log 

[01/Jan/2024:05:25:24 +0000] "GET / HTTP/1.1" 403 199 "-" "python-requests/2.31.0"
78.153.140.221 - - [01/Jan/2024:05:35:54 +0000] "GET /.env HTTP/1.1" 403 199 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36"
95.214.235.169 - - [01/Jan/2024:05:55:12 +0000] "GET /.env HTTP/1.1" 403 199 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36"
95.214.235.169 - - [01/Jan/2024:05:55:14 +0000] "POST / HTTP/1.1" 403 199 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36"

# 1월 1일의 데이터를 제외(-v)하고 찾기
~]# grep 403 access_log | grep -v 01/Jan

✅ grep 옵션

✅ 다른 명령어와 파이프(|) 조합 활용

다중 명령어인 파이프(|)와 조합해서 사용할 수 있습니다.

tail -f access_log | grep 430
tail -f access_log | grep 430 | grep -v 01/Jan

✅ grep의 3종류

grep는 3가지 종류로 분류됩니다. egrep는 정규 표현식만으로 검색하는 것으로 grep 옵션의 -E 옵션고 동일한 결과를 출력내며, fgrep는 문자열만 검색해서 grep 옵션의 -F옵션과 동일한 결과를 출력 해 줍니다.

리눅스 커맨드 라인 인터페이스(Linux command line Interface)

Similar Posts

  • 리눅스 서버 시간 동기화: timedatectl(CentOS7 이상)

    리눅스에서 날짜 및 시간 설정이 필요한 이유는 서버 운영 중 시간이 잘못되면, 입력되는 DB데이터, 로그 데이터, 웹 서버에 접속한 기록 등의 시간이 맞지 않는 경우가 발생할 수 있기 때문입니다. 리눅스 서버 시간 동기화를 사용하는데 있어 OS는 두 개의 시계를 가지고 있습니다.시스템 시계(소프트웨어 시계), 하드웨어 시계(실시간 시계, BIOS 시계)입니다. 목차✅ grep 명령어 기본 사용법✅…

  • 리눅스 top 명령어(CPU, 메모리 점유율 확인)

    리눅스 top 명령어는 구동 중인 OS의 상태를 보여주는 명령어이며 table of processes의 뜻을 가지고 있습니다. 총 메모리 사용량, CPU 사용량 등을 보여주며 각 프로세스의 구체적인 메모리와 CPU 사용량을 개별적으로 확인할 수 있습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류Ⅰ. 리눅스 top 명령어 기본…

  • 리눅스 chage 명령어

    리눅스 chage 명령어는 change age의 줄임 말로 사용자 계정의 만료 및 비밀번호 만료 설정을 관리 할 때 사용합니다. 주요 기능과 목적은 비밀번호 만료일 설정, 비밀번호 최소 사용 기간 설정, 계정의 비활성화 날짜 설정 등이 있습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류✅ chage…

  • ps 명령어(프로세스 명령어)

    ps 명령어는 현재 실행 중인 프로세스를 출력하는 명령어입니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류1. ps 명령어 옵션 ps에서 주로 사용되는 명령어입니다. 기본 사용 옵션은 아래와 같습니다. 2. ps -ef 명령어 ps -ef 명령어는 모든 프로세스를 포멧 리스트로 출력해 줍니다. 2.1 출력 필드…

  • [Linux] lsof 명령어: 실행 중 파일 정보 출력

    lsof 명령어는 lisf open files의 약자로 리눅스 시스템에서 열려 있는 파일의 정보를 출력해 주는 명령어입니다. lsof 명령어는 파일을 포함하여 디렉터리, 네트워크 소켓, 파이프 등 프로세스가 사용 중인 다양한 리소스도 조회할 수 있습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류 ✅ lsof 명령어 기본…

  • rm 명령어

    목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류1. rm 명령어 ‘rm 명령어‘ 는 파일 및 디렉토리를 삭제하는 명령어이다. ‘rm 명령어’ 는 심볼릭 링크는 삭제하지만 링크의 대상 파일은 삭제하지 않는다. ls 명령어와 함께 많이 사용되는 명령어이다. rm(remove) 명령어 rm –remove 파일 및 디렉토리 삭제 ~]#…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 3   +   2   =