리눅스 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

  • 리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

    리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류✅ 리눅스 포그라운드(Fore Ground)란? 터미널에 직접…

  • 리눅스 kill 명령어[kill -9 PID]

    리눅스 kill 명령어는 사용 중인 프로세스를 종료하는 명령어입니다. 터미널에서 프로세스에 시그널(Signal)을 보내서 프로세스를 종료합니다. 프로그램이 정지하거나 응답하지 않는 경우 일반적인 종료가 되지 않는 경우 등에 따라 명령어를 실행하게 됩니다. kill process는 사용 시 중요한 시스템 프로세스를 종료 시키면 시스템이 불안정해질 수 있기 때문에 주의해서 사용해야 합니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용…

  • yum 명령어 | 사용법 | 옵션 | yum-utils | 패키지 관리와 저장소 관리🔝

    레드햇 계열의 리눅스 배포판에서 사용하는 YUM 명령어는 패키지 관리(설치, 업데이트, 제거)를 하는데 사용하는 명령어입니다. yum은 기존 패키지 시스템인 RPM의 의존성 문제를 해결하기 위해 제공되는 도구이며, RPM에서 수행할 수 있는 많은 작업을 수행할 수 있습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류 ✅ YUM 명령어…

  • certbot 명령어(인증서 관리 및 삭제)

    Alma Linux에서 이 사이트에 Certbot 설치 및 갱신 설치를 해 진행하는 중 인증서 삭제 후 재설치를 할 이유가 생겨 삭제와 함께 나머지 Certbot 명령어 사용법에 대해 체크하게 되었습니다. certbot 명령어는 다음 페이지에서 확인했습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류 ✅ certbot 명령어:…

  • 리눅스 chage 명령어

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

  • 리눅스 netstat 명령어, ifconfig 명령어

    리눅스에 netstat 명령어 및 ifconfig 명령어를 실행하기 위해 리눅스 서버에 명령어 실행을 위한 net-tools이 설치되어 있어야 합니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류✅ net-tools 설치 ✅ netstat 명령어 netstat[network statistics:네트워크 통계]은 네트워크 상태를 확인하는 명령어입니다. 어떤 포트가 열려있고, 어떻게 사용되고 있는지와 해킹…

답글 남기기

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

Prove your humanity: 5   +   9   =