현재 제가 사용하고 있는 간단한 문자열이 포함된 파일을 찾으려면 grep -iRl "text" ./
다음 문자열을 찾고 싶습니다 ->text
.
grep -F -iRl "text" ./
탈출을 시도했지만 -\>text
소용이 없었습니다. 잘못된 옵션 오류가 발생했습니다. 특수문자는 어떻게 사용하나요? 감사해요
답변1
사용 grep -e
:
grep -F -iRl -e "->text" ./
또는
grep -F -iRl -e -\>text ./
이스케이프 또는 인용은 다음 >
과 같습니다.껍데기문자 그대로 통과했지만 grep
도움이 되지 않습니다.grep대시로 시작하는 인수는 옵션이 될 것으로 예상됩니다. 옵션과 함께 패턴을 명시적으로 제공하면 -e
이 문제를 피할 수 있습니다.
내 Debian의 GNU grep 매뉴얼 페이지에는 다음과 같은 내용도 언급되어 있습니다.
-e PATTERNS
,--regexp=PATTERNS
패턴으로 PATTERNS를 사용합니다. [...] 이 옵션은 "-"로 시작하는 패턴을 보호하는 데 사용할 수 있습니다.
답변2
옵션과 인수를 구분하기 위해 이중 빼기 기호를 사용할 수 있습니다.
grep -iRlF -- '->text' .