grep --ignore-case --only
--ignore-case 및 --only-match 옵션을 모두 사용하면 grep이 실패합니다. 예:
$ echo "abc" | grep -io abc
abc
$ echo "ABC" | grep -io abc
$
그러나
$ echo "abc" | grep -i abc
abc
$ echo "ABC" | grep -i abc
ABC
man 페이지에 따르면 :
-o, --only-matching Show only the part of a matching line that matches PATTERN. -i, --ignore-case Ignore case distinctions in both the PATTERN and the input files.
grep의 버그입니까, 아니면지도 페이지를받지 못했습니까?
Mac OS X 10.6.8을 사용하고 있으며
$ grep --version
grep (GNU grep) 2.5.1
이 링크를 찾았습니다 : http://lists.gnu.org/archive/html/bug-gnu-utils/2003-11/msg00040.html
물론과 같은 해결 방법을 사용할 수 grep -o [aA][bB][cC]있지만 이것은 좋은 옵션이 아닌 것 같습니다.
이것은 초기 2.5.1 의 알려진 버그 이며 버그 보고서에 따라 2007 년 초 (Redhat 2.5.1-5)에 수정되었습니다. 불행히도 Apple은 Mac OS X 10.7.2 에서도 2.5.1을 사용하고 있습니다.
Homebrew (3.0) 또는 MacPorts (2.26) 또는 fink (3.0-1)을 통해 최신 버전을 얻을 수 있습니다.
편집 :보고 된 grep 버전이 여전히 2.5.1 임에도 불구하고 OS X 10.11 (또는 이전 버전)에서 수정되었습니다.
grep 버전에서 문제가 될 것입니다.
내 컴퓨터에서 테스트 사례가 올바르게 작동합니다.
$ echo "abc" | grep -io abc
abc
$ echo "ABC" | grep -io abc
ABC
그리고 내 버전은 다음과 같습니다.
$ grep --version
grep (GNU grep) 2.10
grep -i가 작동하지 않으면 tr 명령을 사용하여 파일의 출력을 소문자로 변환 한 다음 원하는대로 표준 grep으로 파이프하십시오. (복잡하게 들리지만 내가 제공 한 실제 명령은 아닙니다!).
tr 명령은 원본 파일의 내용을 변경하지 않고 grep에 공급하기 직전에 변환합니다.
1. 파일에서이 작업을 수행하는 방법은 다음과 같습니다.
tr '[:upper:]' '[:lower:]' <your_file.txt|grep what_ever_you_are_searching_in_lower_case
2. 또는 귀하의 경우에 무언가를 반향하는 경우
echo "ABC"|tr '[:upper:]' '[:lower:]' | grep abc
-i의미가 "ABC"와 일치 한다고 제안 하지만 차이점은 출력에 있습니다. -i입력을 조작하지 않으므로 "abc"를 패턴으로 지정했기 때문에 "ABC"를 "abc"로 변경하지 않습니다. -o지정된 패턴과 일치하는 출력 부분 만 표시하고 입력 일치에 대해서는 언급하지 않습니다.
출력 echo "ABC" | grep -i abcIS ABC상기 -o방송 출력 정합 "ABC"아무것도 쇼 : 그래서
Naos:~ mattlacey$ echo "ABC" | grep -i abc | grep -o abc
Naos:~ mattlacey$ echo "ABC" | grep -i abc | grep -o ABC
ABC
참고 URL : https://stackoverflow.com/questions/8498407/grep-ignore-case-only
'IT TIP' 카테고리의 다른 글
| 개인 계정 대신 조직 계정에있는 GitHub 요점을 어떻게 만들 수 있습니까? (0) | 2020.11.05 |
|---|---|
| Scala의 forSome 키워드는 무엇입니까? (0) | 2020.11.05 |
| ExecutorService에서 shutdown ()을 호출하는 이유 (0) | 2020.11.05 |
| 새로운 netstandardapp과 netcoreapp TFM의 차이점은 무엇입니까? (0) | 2020.11.05 |
| CFPrefsPlistSource iOS 10에서 값을 읽지 못했습니다. (0) | 2020.11.05 |