Existence d'un mot dans un fichier

Fermé
jean - 5 juil. 2010 à 14:51
 jean - 5 juil. 2010 à 15:26
Bonjour,

j'ai plusieurs fichiers de texte et je veux vérifier pour chacun des mots s'il appartient a la langue anglaise.

je fait ca :

	seuil=30
	fich='ls -1'
	echo $fich
	for elem in $fich; do
		echo $elem
		nbmottot=' wc -w $elem | cut -d " " -f 1'
		echo $nbmottot
		occu=0
		while [ "$mot" != EOF ];do
			look $mot refEn".txt > /dev/null  #  verification dans le fichier refEN qui contient les mots anglais les plus utilisés d'apres wikipedia. On n'affiche rien
			lookup=$?      # Code de sortie de 'look'.
			if [ "$lookup" -eq 0 ];then
				((occu += 1))
			fi
		done < $elem
		((val = (occu / nbmottot) * 100))
		if [ $val -le $seuil ];then
			echo -e "\n $felem ne paraît pas être un texte en anglais d'apres le programme"
		else
			echo -e "\n le fichier $elem est reconnu comme un discours en anglais"
		fi
	done


mais ca boucle a l'infini ou ca ne me trouve pas les fichiers. Je suis pas sur d'avoir tout compris avec look en plus, si on ne spécifie pas de fichier , il prend le dico dans usr, mais ici je lui donne mon "dictionnaire" qui est en fait une simple liste.

help

merci
A voir également:

1 réponse

Bonjour,

Si tu fais cette boucle : while [ "$mot" != EOF ]
Sans jamais alimenter la variable $mot ;
Alors effectivement, ça fait une boucle infinie...

Cordialement, M.
0
oui.. en effet
mais je ne comprend pas bien ce while avec le look. J'ai récuperer ce morceau dans un code ici : http://ksh.freeshell.org/scripting/fr/untyped.html
0