I would like to include files with a specific name -- not an extension -- in my ack
search. Is this possible with ack?
If I use the -G
option, this would exclude all other file types. (So I can't put it in my .ackrc
file.)
I tried to use --type-set mytype=filename.txt
but this only works for extensions, so this would search for files including the pattern .filename.txt
, thus not find filename.txt
. (That's also what the ack --help types
shows: --mytype .filename.txt
, not --mytype filename.txt
.)
Someone any ideas?
man ack
says that the files to be searched in can be given through standard input.
So this should work:
find . -name filename.txt | ack PATTERN -
Unfortunately, it doesn't. It gives ack: Ignoring 1 argument on the command-line while acting as a filter.
, which apparently is a bug in ack. When this bug will be fixed, we should be able to use
find . -name filename.txt | ack --nofilter PATTERN -
You also do it like if you're using zsh
:
ack 'Pattern' **/filename.txt
What you're asking is "can I make a filetype that ack recognizes based on a filename", and the answer is "No, not in ack 1.x, but you can in ack 2.0". ack 2.0 is in alpha release, and we hope to have a beta by Christmas.
As @Christian pointed out above, you can specify the given filename on the command line, but that bypasses filetype checking entirely.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With