문자 그대로 문자보다 큰 문자 ( “>”) 다음에 공백과 백 슬래시 문자 ( “\”)가있는 행을 찾고 있습니다.
나는 탈출하는 것이 이것을 가능하게 할 것이라고 생각했으며, 그보다 더 컸습니다.
$ ack-grep "\>"
“>”가있는 줄을 반환합니다.
그러나 백 슬래시를 피하려고하면 다음과 같은 결과가 나타납니다.
$ ack-grep "\> \\"
ack-grep : 잘못된 정규식 ‘\> \’:
정규식에서 후행 \ / \> /
답변
와우, 나는 너무 가까웠다 … 작은 따옴표 :
$ ack-grep '\> \\'
http://regexpal.com/ 사용하여 정규식 일치가 유효한지 확인한 후
다른 것을 시도하여 작은 따옴표를 사용했습니다.
답변
이것은 또한 작동합니다 :
$ ack-grep '> \\'
그렇습니다 :
$ ack-grep "> \\\\"
보다 큼을 피할 필요는 없습니다.
답변
리터럴 문자열을 검색하려면 리터럴 옵션을 사용하십시오.
ack-grep --literal '> \'
답변
여기서 문제는 ack가 아니라 쉘 인용과 관련이 있습니다. “> \”를 인수로 전달하려는 모든 프로그램에서이 문제가 발생합니다.