Câu trả lời:
Sử dụng đúng công cụ cho đúng công việc. Nếu bạn muốn tìm kiếm tên tệp, hãy sử dụng 'find':
$ # search for all *.txt file in current directory
$ find . -iname "*.txt"
find . | ack whatev.ext
ack -g REGEX
In các tệp có đường dẫn tương đối + tên tệp khớp với REGEX
[^/]*$
vào REGEX của bạn để chỉ tìm kiếm trong tên tệp
Tôi đồng ý sử dụng find nếu bạn chỉ tìm kiếm các tệp * .txt. Tuy nhiên, ack có các tính năng phát hiện loại tệp mạnh mẽ, vì vậy bạn có thể sử dụng
ack -f --perl
sẽ tìm thấy tất cả các tệp Perl, dựa trên cả tên tệp (* .pm, * .pl, * .t và * .pod) và dòng shebang.