파일 이름이 copy, cony, coby OR tool, trol, thol 등의 단어와 일치하면 파일을 무시하고 싶습니다.
이것은 작동합니다 :
ack -l -i --ignore-file=match:/co.y/ --ignore-file=match:/t.ol/ "mystring" _mynukelib
하지만 단일 --ignore 매개변수를 사용하고 싶습니다. "|"를 사용하여 일반 정규식처럼 "OR" 논리를 생성해 보았지만 작동하지 않습니다.
ack -l -i --ignore-file=match:/co.y|t.ol/ "mystring" _mynukelib
논리적 OR을 수행하는 올바른 구문은 무엇입니까?
답변1
ignore
여러 정규식에 대해 이 스위치가 작동하도록 하려면 중괄호와 쉼표를 사용하세요.
ack -l -i --ignore-file=match:{t.ol,co.y} "mystring" _mynukelib
정규식 이름 이 포함된 _mynukelib
디렉터리의 모든 파일 은 .co.y
t.ol
mystring
다른 정규식(또는 문자열)을 제외하려면 쉼표로 구분된 중괄호 안에 추가하세요. 아마도 여러분이 사용하고 있는 ack
쉘의 중괄호 확장을 사용하십시오 . bash
같은 방식으로 작동합니다.