ack를 사용하여 파일 이름을 검색하는 방법


15

grep보다 훨씬 빠른 ack을 사용하기 시작했습니다. 그러나 ack을 사용하여 파일 내용이 아닌 파일 이름을 검색하고 싶습니다. 그렇게 할 방법이 있습니까?

답변:


16

올바른 작업에 적합한 도구를 사용하십시오. 파일 이름을 검색하려면 'find'를 사용하십시오.

$ # search for all *.txt file in current directory
$ find . -iname "*.txt"

1
매우 사실입니다. "손에 망치를
쥐면

2
음, ack (및 grep)은 원하지 않는 한 정규 표현식에 대해 명시 적으로 설명 할 필요가 없기 때문에 더 좋습니다. 나는 보통find . | ack whatev.ext
Ehtesh Choudhury

이것은 디렉토리 찾기에도 효과적입니다.
Pratik Khadloya

1
ack은 기본적으로 find에 포함되는 많은 결과 (버전 제어 디렉토리의 내용, 소스 리포지토리의 컴파일 된 객체)를 필터링하므로 find와 ack은 다르게 동작합니다. 최고의 해머는 원하는 결과에 따라 다릅니다.
Joshua Goldberg

1
이것은 질문에 대답하지 않습니다 ...
lajarre

23
ack -g REGEX

상대 경로 + 파일 이름이 REGEX와 일치하는 파일을 인쇄하십시오.


1
[^/]*$REGEX에 추가 하여 파일 이름 만 검색하십시오
simon

7

* .txt 파일 만 검색하는 경우 find를 사용하는 것이 좋습니다. 그러나 ack에는 강력한 파일 형식 감지 기능이 있으므로 사용할 수 있습니다.

ack -f --perl

파일 이름 (* .pm, * .pl, * .t 및 * .pod)과 shebang 행을 기반으로 모든 Perl 파일을 찾습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.