DevKB
Web Development Knowledge Base
HOME | TOP 20 | WRITE AN ARTICLE |
Sections :



RSS RSS Feed

You too, please publish your useful code snippets in any programming language :
write an article !


Valid HTML 4.0 Transitional

Plateforme d'envoi de gros fichiers en ligne
Dépannage site web
Blog infogérance
Hébergement e-mail

Olivier Ligny - - 12/03/2008 - vue 18401 fois

Compter le nombre d'occurence d'un mot dans un fichier - Linux

Voici comment compter le nombre d'occurences d'un mot (ou d'autre chose ...) dans un fichier, sous Linux.
Utile pour, par exemple, faire des statistiques sur des fichiers logs d'Apache : sortir toutes les requêtes faites par une IP, ou compter le nombre d'usagers de Firefox ou IE.

La commande :

cat lefichier | grep "mot" | wc -l

Explications :

cat lefichier : lit le fichier 'lefichier'
grep "mot" : sélectionne les lignes où "mot" apparait
wc -l : compte le nombre de lignes

Attention : "mot" est traité comme un regexp, si il contient des caractères spéciaux comme " ou un point, vous devez les échapper avec un caractère backspace arrière , pour qu'il ne soit pas interprèté de travers.
Exemple : grep "mot " abc . truc"

Vous pouvez cumuler les grep, pour sélectionner les lignes qui contiennent à la fois un mot A et un mot B. Exemple :

cat lefichier | grep "mot" | grep "autre_mot" | wc -l


plop - 11/07/2011
Ceci ne compte pas le nombre d’occurrences d'un mot dans un fichiers mais plutôt le nombre de lignes qui contiennent un certain mot, ce qui est sensiblement différent.
benoit - 02/08/2011
Pas de pb si tous les mots sont sur une même ligne ... ??!!
olivier - 02/08/2011
J'espère que se sont des noobs qui ont écris ce script... c'est grave quand même comme description : Voici comment compter le nombre d'occurences d'un mot (ou d'autre chose ...) dans un fichier, sous Linux
N'importe qui peut se dire programmeur ... Avec ce genre de chose...
waelos tunisian - 21/02/2013
pour faire beaucoup plus simple c'est:

grep -c 'mot' fichier
Cinlloc - 09/09/2014
grep -c 'mot' fichier
compte le nombre de lignes, pas d'occurrences.
La commande correcte pour compter le nombre d'occurrences de 'foo' dans le fichier 'bar' est :
grep -o 'foo' bar.txt | wc -l

mamastem - 06/02/2015
et comment compter le nombre d'occurence dans un fichier de type csv lorsque la colonne se trouve en 12eme posistion ?
Michekoko - - 23/11/2016



Write a comment :
Your name :     E-mail (optional) :

AntiSpam : what animal is visible on this picture ? :

Nos partenaires : iPhone 8 Cases & Protection