일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 자바
- mssql
- 오블완
- spring
- Python
- docker
- PostgreSQL
- network
- analytics4
- oracle
- API
- IntelliJ
- java
- Linux
- 리눅스
- group by
- 티스토리챌린지
- MongoDB
- rsync
- DBMS
- 차이점
- JPA
- SQL
- git
- 트랜잭션
- 명령어
- top
- mysql
- Javascript
- MariaDB
- Today
- Total
hanker
Linux - grep 명령어 (텍스트 파일 내에서 특정 패턴이나 문자열을 검색할 때 사용) 본문
이번에 알아볼 명령어는 Linux 시스템에서 자주 사용되는 grep 명령어다.
grep 명령어는 텍스트 파일 내에서 특정 패턴이나 문자열을 검색할 때 사용된다.
기본 사용법부터 옵션, 어떻게 사용하면 되는지에 대해서 알아보자!
1. 기본 사용법
기본 사용법은 아래와 같다.
# grep [검색할 문자열] [파일명]
grep "error" log.txt
log.txt 파일에서 "error"라는 문자열이 포함된 모든 줄을 출력한다.
2. 주요 옵션
옵션 | 설명 |
-i | 대소문자 구분 없이 검색 |
-v | 검색 문자열이 포함되지 않은 줄 출력 |
-r | 하위 디렉토리 포함하여 모든 파일을 재귀적으로 검색 |
-n | 검색 결과의 줄 번호 표시 |
--color=auto | 검색어를 색상으로 강조 표시 |
예를 들어, -i 옵션을 사용하여 대소문자 구분 없이 'hello'를 검색해보자
grep -i 'hello' example.txt
위 코드는 'hello', 'Hello', 'HELLO' 등이 포함된 모든 행을 출력하게 된다.
3. 실제 사용 예제
3-1. 특정 단어 검색
grep "server" config.txt
- config.txt 파일에서 "server"라는 단어가 포함된 줄을 출력한다.
3-2. 여러 파일에서 검색
grep "error" *.log
현재 디렉토리의 모든 .log 파일에서 "error" 문자열을 검색 후 출력한다.
3-3. 대소문자 구분 없이 검색
grep -i "warning" log.txt
- "Warning", "WARNING", "warning" 등 대소문자 구분 없이 log.txt 파일 내에서 모든 문자열이 포함된 행을 출력한다.
3-4. 하위 디렉토리 포함 검색
grep -r "TODO" .
- 현재 디렉토리와 하위 디렉토리에서 "TODO"라는 문자열을 검색한다.
3-5. 특정 문자열 제외
grep -v "debug" log.txt
- log.txt 파일에서 "debug" 문자열을 포함하지 않는 행을 출력한다.
4. 정규 표현식 활용
grep은 정규 표현식을 지원하여 복잡한 검색 조건을 처리할 수 있다.
정규 표현식 | 설명 |
^ | 문자열의 시작 |
$ | 문자열의 끝 |
. | 임의의 문자 |
* | 0개 이상의 반복 |
grep "^error" log.txt
- log.txt 파일에서 "error"로 시작하는 줄을 찾는다.
5. 실시간 로그 분석
grep 명령어와 tail 명령어를 결합하면 실시간 로그 분석이 가능하다.
tail -f /var/log/syslog | grep "error"
시스템 로그에서 "error"를 포함한 항목을 실시간으로 모니터링 한다.
grep 명령어는 진짜 진짜 많이 쓰인다.
옵션들도 더 많으니 알아보고 실업무에서 사용하길 바란다!
끝!
'SERVER > Linux' 카테고리의 다른 글
Linux - rsync 명령어 (scp 명령어보다 세부적이고 빠르게 파일 복사) (0) | 2025.01.20 |
---|---|
Linux - scp 명령어 (서버끼리 안전하게 파일 복사 명령어) (0) | 2025.01.19 |
Linux - top 명령어 (CPU, 메모리 사용량 등 현재 OS의 상태를 모니터링) (0) | 2025.01.17 |
Linux - 파일이나 디렉터리의 권한 변경 (chmod 명령어) (0) | 2024.11.23 |
Linux - 현재 실행중인 프로세스 확인 (ps 명령어) (0) | 2024.11.15 |