Recherche d'un mot le plus utilisé

sebprs -  
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
Je cherche à trouver la suite optimale de commandes du shell bash pour trouver le mot le plus utilisé dans un texte quelconque.
Merci d'avance pour votre aide.

3 réponses

jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,

Tu as des pistes déjà de ton côté, ou tu attends un truc tout mâché ?
0
sebprs
 
J'ai déjà commencer à travailler dessus.
en fait la recherche du mot le plus utilisé doit s'effectuer sur un fichier text et non pas un fichier quelconque.
Moi, je pensait supprimer tous les signes de ponctuation et les retours ligne car à deux commandes "tr" et aisi recuerer un fichier texte avec un mot par ligne.
tr -s "\n" < fichier texte > f1
tr -s "[:punct:][:space:]" "\n" < f1 > un_mot_par_ligne
Ensuite, j'effectue un trie du fichier obtenu puis utiliser la commande unique pour ne faire apparaitre que les lignes dupliquées:
sort un_mot_par_ligne | uniqu -d
donc, je me retrouve avec une serie de mots dupliqués, mais comment faire pour retrouver le mot le plus utilisé ?
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
jp@MDK:~/tmpfs ssh$ cat plop
Bonjour,
Je cherche à trouver la suite optimale de commandes du shell bash pour trouver le mot le plus utilisé dans un texte quelconque.
Merci d'avance pour votre aide.
trouver

jp@MDK:~/tmpfs ssh$ for mot in $(cat plop);do echo $mot;done | sort -r | uniq -d -c | head -1
      3 trouver

jp@MDK:~/tmpfs ssh$
;-))
0