n'a pas pu trouver cela sur SO. J'ai exécuté la commande suivante dans le terminal:
>> grep -Rl "curl" ./
et cela affiche la liste des fichiers où le mot-clé curl se produit. Je veux compter le nombre de fichiers. La première façon dont je peux penser, est de compter le nombre de lignes dans la sortie qui sont arrivées dans le terminal. Comment puis je faire ça?
-c
drapeau qui renvoie simplement le nombreRéponses:
Dirigez le résultat à l'
wc
aide du commutateur-l
( nombre de lignes ):la source
grep "" -c
mais c'est beaucoup plus agréable :)grep -c
doit être utilisée au lieu de diriger la sortie vers un autre programme. Par exemple, vous ne changeriez même pas les caractères de votre document Word avec un autre éditeur de texte que Word, n'est-ce pas?Mettre le commentaire de EaterOfCode ici comme réponse.
Ainsi, la commande et la sortie pourraient ressembler à ceci.
ÉDITER:
Bien que cette réponse puisse être plus courte et donc sembler meilleure que la réponse acceptée (qui utilise
wc
). Je ne suis plus d'accord avec cela. J'ai l'impression de me souvenir que vous pouvez compter les lignes par tuyauterie verswc -l
est beaucoup plus utile car vous pouvez l'utiliser avec d'autres programmesgrep
.la source
Le piping vers 'wc' pourrait être meilleur SI la dernière ligne se termine par une nouvelle ligne (je sais que dans ce cas, ça le sera)
Cependant, si la dernière ligne ne se termine pas avec une nouvelle ligne 'wc -l' renvoie un faux résultat.
Par exemple:
Reviendra
1
etReviendra
0
Donc ce que j'utilise souvent c'est
grep <anything> -c
C'est plus proche de la réalité que de ce
wc -l
qui reviendra.la source