2010-08-24 4 views

Répondre

5

Si vous le souhaitez séparé par fichier:

find -type f \(-name "*.h" -o -name "*.cpp" \) -exec wc {} \; 

si vous voulez que la somme accumulée:

find -type f \(-name "*.h" -o -name "*.cpp" \) -exec cat {} \; | wc -l 
0

Utilisez zsh au lieu de bash:

wc **/*.(cpp|h) 

Cela permettra d'élargir sur à tous les fichiers .cpp et .h dans le répertoire en cours et tous les sous-répertoires.

2

bash 4

shopt -s globstar 
wc **/*.{cpp,h} 
1

Je pense find et xargs est plus claire et plus facile à travailler au lieu de find -exec mais il est le choix de style.

find . -name "*.h" -or -name "*.cpp" | xargs wc

Questions connexes