Es hängt davon ab, was tatsächlich in ist foo
, oder wenn Sie gesagt haben, ack-grep
zu erkennen, es als einetype
# using ack-grep Version 1.92 mkdir junk; cd junk echo 'hello' > wango ack-grep hello # nothing found, because 'wango' is an unknown type echo -e '#!/bin/bash\nhello' > wango ack-grep hello # found, because '#!/bin/bash` identifies a known type wango 2:hello echo 'hello' > wango ack-grep -a hello # found, because '-a' selects all files (almost all) wango 1:hello
Von man ack-grep
ack-grep ist intelligent über die Dateien, die es durchsucht. Es kennt bestimmte Dateitypen, die auf der Dateierweiterung und in einigen Fällen auf dem Inhalt der Datei basieren. Diese Auswahl kann mit der Option --type getroffen werden.
Ohne Dateiauswahl durchsucht ack-grep nur Dateien mit erkannten Typen. Wenn Sie eine Datei namens foo.wango haben und ack-grep nicht weiß, was eine .wango-Datei ist, wird sie von ack-grep nicht durchsucht.
Die Option -a weist ack-grep an, alle Dateien unabhängig vom Typ auszuwählen.
Einige Dateien werden niemals von ack-grep ausgewählt, auch nicht mit -a, einschließlich:
· Sicherungsdateien: Dateien, die mit # * # übereinstimmen oder mit ~ enden.
· Coredumps: Dateien, die dem Kern entsprechen. \ D +
Ack-grep durchsucht jedoch immer die in der Befehlszeile angegebenen Dateien, unabhängig vom Typ. Durch Angabe der Option -u werden außerdem alle Dateien durchsucht.