반달가면 이글루에서 백업 - http://bahndal.egloos.com/575115
검색하고자 하는 문자열에 탭이 포함되어 있을 경우, 일단 awk를 사용할 수 있다. 이전 게시물을 참고하자. 여기로
grep으로 검색하려면 탭을 변수에 할당한 후에 사용하면 될 것으로 보인다. 아래의 예시를 보자.
tab=`echo -e "\t"`
# file.txt에서 abc[탭]def 문자열 검색
grep "abc${tab}def" file.txt
abc def
단순히 문자열만 검색할 경우에는 awk나 grep이나 대동소이할 수 있으나, 행번호를 같이 표시하거나(-n 옵션) 일치하는 행 위/아래의 내용을 확인하는 등(-A, -B 옵션) grep의 유용한 옵션들이 필요할 경우 위와 같은 방법으로 사용하면 되겠다.
# file.txt 에서 abc[탭]def 문자열 검색, 행번호 표시
grep -n "abc${tab}def" file.txt
10:abc def
위의 예시에서 탭을 할당한 변수를 사용할 때, 뒤에 오는 다른 문자열과 혼동되지 않도록 하기 위해 중괄호(${})를 사용함에 유의하자.
728x90
'bash script' 카테고리의 다른 글
[bash: uniq] 중복되는 행 또는 중복되지 않는 행만 골라서 출력하기 (0) | 2023.07.06 |
---|---|
[bash: bc] 자연수 나눗셈에서 올림/반올림 (0) | 2023.07.04 |
[bash: grep] 문자열 검색하면서 행번호 같이 표시하기 (0) | 2023.07.03 |
[bash: grep] 정규표현식에 사용되는 특수문자 (0) | 2023.07.03 |
[bash: ${}] 셸 파라메터 확장(shell parameter expansion) (0) | 2023.06.30 |