반달가면 이글루에서 백업 - 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
'bash script' 카테고리의 다른 글
[bash: for, sed, seq] 공백을 포함한 이름을 가진 파일들에 대한 반복 작업 (0) | 2023.04.17 |
---|---|
[bash: sed] 여러개의 문자열을 각각 다른 문자열로 대체하기 (0) | 2023.04.17 |
[bash: grep] 한글 문자열 검색 (0) | 2023.04.17 |
[bash: awk] awk에서 출력할 위치(필드)를 변수로 지정하기 (0) | 2023.04.17 |
[bash: readlink] 상대경로를 절대경로로 바꾸기 (0) | 2023.04.17 |