Ich bin sicher, dass ich etwas über ack der Datei/Verzeichnis ignorieren defaults bin Missverständnis, aber vielleicht könnte jemand etwas Licht in diese für mich vergossen:ack Misses Ergebnisse (vs. grep)
mbuck$ grep logout -R app/views/
Binary file app/views/shared/._header.html.erb.bak.swp matches
Binary file app/views/shared/._header.html.erb.swp matches
app/views/shared/_header.html.erb.bak: <%= link_to logout_text, logout_path, { :title => logout_text, :class => 'login-menuitem' } %>
mbuck$ ack logout app/views/
mbuck$
Während .. .
mbuck$ ack -u logout app/views/
Binary file app/views/shared/._header.html.erb.bak.swp matches
Binary file app/views/shared/._header.html.erb.swp matches
app/views/shared/_header.html.erb.bak
98:<%= link_to logout_text, logout_path, { :title => logout_text, :class => 'login-menuitem' } %>
einfach ack
ohne Optionen aufrufen nicht finden können, das Ergebnis innerhalb einer .bak
Datei, aber mit der Option --unrestricted
Aufruf kann das Ergebnis finden. Soweit ich das beurteilen kann, ignoriert ack die .bak
Dateien standardmäßig nicht.
UPDATE
Dank der hilfreichen Kommentare unten, hier sind die neuen Inhalte meiner ~/.ackrc
:
--type-add=ruby=.haml,.rake --type-add=css=.less
Großartig, danke für die Hilfe! Für jeden, der interessiert ist, gibt die folgende Seite ein bisschen mehr Informationen über das Hinzufügen von unbekannten Dateitypen (wie .haml) zu ack: http://wiki.github.com/protocool/ack-tmbundle/recognosing-files – techpeace
Die Dateitypen ack erkennt sind nicht nur Erweiterungen. Es wird auch Shebang-Linien betrachten. Wenn Sie ein Programm "mywhatever" haben, das "#!/Usr/bin/perl" startet, weiß ack, dass es ein Perl-Programm ist. –
Beachten Sie, dass ack 2.0 dieses Verhalten ändert. –