[Info] 대소문자 무시하는 grep -i 옵션 활용방법
grep 명령어를 리눅스 혹은 macOS의 터미널에서 텍스트 검색 및 필터링을 위해 자주 사용 한다.
그러나 검색 및 필터링을 하려는 내용에 같은 부분이지만 대소문자로 나눠져 있는 경우 -i 옵션을 이용해서 대소문자를 구분 없이 검색 및 필터링을 가능하게 한다.
이번에는 간단하게 grep 명령어의 -i 옵션에 대해서 알아보도록 하자.
1. grep 명령어의 기본 구조
먼저 grep 명령어에 대한 사용 방법, 옵션등에 대한 자세한 부분은 나중에 정리를 해보도록 하겠다.
이번에는 간단하게 사용하는 기본 구조를 알아보도록 하자.
grep은 아래와 같은 형식으로 사용하면 되고 옵션 부분에 다양한 옵션을 추가하여 사용이 가능하다.
2. -i 옵션의 역할
-i 옵션은 검색, 필터링 시 대소문자를 구분 없이 사용함에 따라서 검색, 필터링의 유연성을 높여주어 보다 효율적으로 사용을 할 수 있다.
해당 옵션을 적절히 활용하면 쉽고 빠르게 원하는 결과를 얻을 수 있다.
간단하게 예시를 들어보면 log.txt라는 파일에 error, Error, ERROR와 같이 부분으로 입력이 되어 있을 때 -i 옵션을 이용해서 모두 확인을 할 수 있다.
- $ grep -i error log.txt
# grep -i 옵션 사용 방법 Example
$ grep -i error log.txt
error: test
Error: Test
ERROR: TEST
$ grep error log.txt
error: test
$ grep Error log.txt
Error: Test
이처럼 log.txt 파일에 error가 있는 경우 -i 옵션을 통해서 대소문자 구분 없이 검색, 필터링을 할 수 있다.
다른 명령어와도 같이 사용할 때도 유용하게 사용이 가능하다.
- $ ps -ef | grep -i kakaotalk
# grep -i 옵션 사용 방법 Example
$ ps -ef | grep -i kakaotalk
501 20314 1 0 금09AM ?? 1:29.22 /Applications/KakaoTalk.app/Contents/MacOS/KakaoTalk
$ ps -ef | grep kakaotalk
$ ps -ef | grep KakaoTalk
501 20314 1 0 금09AM ?? 1:29.24 /Applications/KakaoTalk.app/Contents/MacOS/KakaoTalk
역시나 프로세스 구동을 검색할 때도 대소문자에 따라서 검색이 안 되는 경우가 있는데 이때 -i 옵션을 통해서 대소문자 구분 없이 검색을 할 수 있다.
다만, 대소문자를 구분 없이 검색, 필터링하는 것은 유연성은 제공하지만 검색 패턴등에 따라서 원하지 않는 결과가 나올 수 있기 때문에 상황에 맞게 잘 사용을 해야 한다.
🌵댓글