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

  • 리눅스 명령행 인자(Command-Line Argument)와 명령어 옵션

    ‘리눅스 명령행 인자(Command-Line Argument)‘는 ‘리눅스 명령어 인수‘, ‘명령 인자‘ 등으로도 불리며, 리눅스 커맨드 라인에서 명령어를 실행할 때 프로그램에 전달하는 매개변수를 뜻 합니다. 리눅스에서 “매개변수(Parameters)”는 일반적으로 프로그램이나 함수에 전달되는 값을 가리킵니다. 이 값은 해당 프로그램이나 함수가 실행될 때 필요한 입력 값으로 사용됩니다. 컴퓨터 프로그래밍에서 “매개변수(Parameters)”는 함수에 전달되는 값을 받아들이는 변수를 의미합니다. 이는 함수 정의에…

  • [Linux] 리눅스 mv 명령어 사용법 및 mv 명령어 옵션

    리눅스 mv 명령어는 Move의 약자로 파일 또는 디렉토리를 이동하거나 이름을 변경할 때 사용하는 명령어입니다. 기본적인 리눅스 mv 명령어 사용법과 옵션 및 활용 방법에 대해 알아 보겠습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류✅ 리눅스 mv 명령어 기본 옵션 mv 명령어의 기본 사용 방법입니다….

  • 리눅스 who, w 명령어 & user 명령어

    리눅스 who 명령어는 현재 서버에 로그인한 사용자 리스트를 보여주는 명령어입니다. w 명령어는 현재 시스템에 로그인한 사용자와 사용자의 작업 내용을 보여주는 명령어로 각각의 차이가 있습니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류✅ 리눅스 who 명령어 현재 접속 사용자(USER) 터미널 유형(TTY) 접속 시간 및 IP…

  • 리눅스 cd 명령어

    cd 명령어는 “Change Directory”의 약자로, 현재 작업 디렉토리(현재 위치)를 다른 디렉토리로 이동할 때 사용하는 명령어입니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류✅ cd 명령어 기본 사용 방법 ✅ 사용 예시 cd 명령은 절대 경로(/부터 시작)를 기입해서 이동하는 방식과 상대 경로(. 및 ..)를 이용해서…

  • 리눅스 퍼미션(4,2,1)과 소유권 | chmod, chown, umask 명령어 | 스티키 비트

    리눅스 퍼미션(Permission)은 권한(&허가)을 의미합니다. 유닉스 계열 운영 체제들은 MS-DOS 계열의 운영 체제들은 멀티 테스킹 시스템이 아니며 멀티 유저 시스템 역시 아닙니다. 보통 컴퓨터는 하나의 키보드와 모니터를 가지고 한 명이 사용하지만 멀티 유저 시스템인 리눅스는 한 명 이상이 사용할 수 있다는 것을 의미합니다. 유닉스 계열의 멀티 유저 시스템은 운영 체제 설계 초기부터 깊게 내장된…

  • 리눅스 wget 명령어

    wget 명령어는 웹의 다운로드 링크를 리눅스 커멘드라인에서 실행해 다운로드를 할 수 있는 명령어입니다. HTTP, HTTPS, FTP 프로토콜을 이용해서 웹 서버에서 다운로드가 가능합니다. 목차✅ grep 명령어 기본 사용법✅ 기본적인 사용 예✅ grep 옵션✅ 다른 명령어와 파이프(|) 조합 활용✅ grep의 3종류wget 설치하기 레드헷 계열에서 사용하는 패키지 매니저인 yum으로 wget 설치를 진행합니다. 기본 다운로드 명령입니다. wget…

답글 남기기

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

Prove your humanity: 2   +   7   =