bash script2023. 4. 17. 16:45

 

반달가면 이글루에서 백업 - http://bahndal.egloos.com/560072

 

grep 명령으로 문자열을 검색할 경우에 일치하는 부분이 있으면 해당 문자열이 포함된 행 전체를 표시해 준다. 아래의 예시를 보자.

cat my_file.txt | grep John
His name is John.
John's address is unknown. John's phone number is 123-1234

행 전체를 출력하지 않고 일치하는 문자열만 골라서 출력하고 싶으면 -o 옵션을 사용하면 된다.

# 일치하는 문자열만 출력
cat my_file.txt | grep -o John
John
John
John

-o 옵션을 사용하면 한 행에 찾고자 하는 문자열이 2개 이상 있을 경우에 각각 분리해서 출력해 주기 때문에, 파일 안에서 특정 문자열이 몇번 출현했는지 세고 싶을 때 요긴하다. grep 명령에 -o 옵션을 사용해서 문자열을 출력한 후에, wc 명령에 -l 옵션을 사용해서 행의 수를 세면 된다. 아래의 예시를 보자.

# 문자열 'John'이 몇번 출현했는지 세어 보기
cat my_file.txt | grep -o John | wc -l
3

728x90
Posted by 반달가면