Problème pour trier les informations d'un fichier
Résolu
Ka-El
Messages postés
260
Date d'inscription
Statut
Membre
Dernière intervention
-
Ka-El Messages postés 260 Date d'inscription Statut Membre Dernière intervention -
Ka-El Messages postés 260 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai la variable $toto qui peut parfois être un nom commun (par exemple "Robert" ou "Martha").
Mais dans d'autre cas cette variable peut me donner l'information "nom inconnu".
Je souhaite faire une boucle for qui va différencier les nom commun des "nom inconnu".
A noter que Je construit la variable à partir d'un fichier.
Voilà ce que cela donne pour l'instant:
for i in `cat fichier`
do
toto=`(je ne met pas le détail de la commande, mais le résultat peut être donc soit "robert" ou "nom inconnu")`
if [ ${toto} == ${toto} ]; then
echo $toto >> fichier_tri.txt
else
echo "anonyme" >> fichier_tri.txt
fi
done
Pour l'instant, le fichier_tri me liste bien les noms commun mais l'information "anonyme" n'apparait pas.
Vous savez pourquoi ?
Merci
j'ai la variable $toto qui peut parfois être un nom commun (par exemple "Robert" ou "Martha").
Mais dans d'autre cas cette variable peut me donner l'information "nom inconnu".
Je souhaite faire une boucle for qui va différencier les nom commun des "nom inconnu".
A noter que Je construit la variable à partir d'un fichier.
Voilà ce que cela donne pour l'instant:
for i in `cat fichier`
do
toto=`(je ne met pas le détail de la commande, mais le résultat peut être donc soit "robert" ou "nom inconnu")`
if [ ${toto} == ${toto} ]; then
echo $toto >> fichier_tri.txt
else
echo "anonyme" >> fichier_tri.txt
fi
done
Pour l'instant, le fichier_tri me liste bien les noms commun mais l'information "anonyme" n'apparait pas.
Vous savez pourquoi ?
Merci
A voir également:
- Problème pour trier les informations d'un fichier
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Trier un tableau excel - Guide
- Fichier rar - Guide
Mais j'y tiens à mon for, car en réalité il est un peu plus complexe ;-)
Par ailleurs, dans ton exemple, je ne vois pas à quel moment, tu vas pouvoir indiquer l'information "anonyme" dans le fichier final ?
En fait, j'ai quitter le shell script depuis quelques années et j'ai bien du mal à m'y remettre... :-(
Du coup, comment je peux faire pour différencier $toto quand j'ai l'information "nom inconnu" (avec un joli espace entre les mots) et quand $toto me donne un nom commun de type Robert ou Patoche ?
Puis ta boucle , comme je te l'ai dit, n'est pas adéquate pour le traitement que tu veux faire, puisque elle ne sait pas gérer les espaces.
Pour faire bref, quand elle rencontre "nom inconnu", elle traite d'abord "nom" puis ensuite "inconnu", ce qui n'arriverait pas avec une boucle
Un exemple :
Je prends !
merci beaucoup pour ton aide.