La recherche récursive dans une arborescence est très aisée grâce
aux commande find et xargs.
N'hésitez pas à consulter leur page de man. Le tube suivant recherche
dans les sources du noyau une carte Ethernet ``pcnet'' et il affiche
le numéro de la ligne:
find /usr/src/linux -follow -type
f | xargs grep -iHn pcnet
|
Il ne vous échappera pas que cette commande retourne un grand nombre de données. Parcourez-les, cela sera instructif.
Il est également possible de limiter la recherche à une extension
de fichier donnée, ce qui constitue un exemple typique du tube décrit
ci-dessus:
find /usr/src/linux -follow -type
f -name '*.[ch]' | xargs grep - iHn pcnet
|
Notez que les nouvelles versions de grep possèdent l'option -r pour effectuer une recherche récursive parmi les répertoires.