Réponses:
ack (ou, sur Debian / Ubuntu, ack-grep) ignorera les fichiers non sources comme le contrôle de version ou les binaires. Très utile.
pour rechercher uniquement les fichiers .c et .h, comme ci-dessus:
ack-grep -i --cc "invalid preset"
le --cc
(le formulaire le plus long est --type cc
) ne regarde que les fichiers .c .h & .xs. La liste complète des types de fichiers est visible avec ack-grep --help type
. La plupart du temps, vous n'aurez pas particulièrement besoin de --type
, car il n'aura généralement que les fichiers à rechercher, puis les fichiers que vous ne verrez pas par défaut, comme les fichiers binaires, les sauvegardes et les fichiers de contrôle de version.
Le grep
programme lui-même peut effectuer une recherche récursive et accepte également une option pour rechercher uniquement certains fichiers. Ce qui suit est équivalent à vos deux find
commandes.
grep -Ri --include=*.[ch] invalid\ preset .
Je peux ajouter quelque chose comme ça à votre ~/.bashrc
alias cppgrep='grep -Ri "--include=*.[hc]" "--include=*.cpp" "--include=*.hpp"'
-name '*.[ch]'
marche?