Double lecture de fichier ligne par ligne
Résolu
padowan
Messages postés
21
Statut
Membre
-
padowan Messages postés 21 Statut Membre -
padowan Messages postés 21 Statut Membre -
bonjour ,
J'ai suivi le "cours" pour la lecture de fichier ligne par ligne (jicipy)
Comment lire un fichier ligne par ligne
Je voudrai lire un fichier ligne par ligne , et comparer en même temps avec les ligne d'un autre fichier.
exemple :
-------------------------
fichier 1 :
toto
titi
tata
------------------------
fichier 2
un
trois
tata
cinq
titi
-------------------------
je voudrai tester le fichier un et le fichier deux en même temps et que ça me renvoi par exemple ceci :
fichier 3
------------------------
non
non
non
ok
non
ok
Voila ce que j'ai déjà fais mais c'est moyen
#! /bin/bash
while read line
do
while read toto
do
if [ $line = $toto ]; then
echo "ok"
else
echo "raté"
fi
done < temp4
done < temp5
Merci de m'aider
J'ai suivi le "cours" pour la lecture de fichier ligne par ligne (jicipy)
Comment lire un fichier ligne par ligne
Je voudrai lire un fichier ligne par ligne , et comparer en même temps avec les ligne d'un autre fichier.
exemple :
-------------------------
fichier 1 :
toto
titi
tata
------------------------
fichier 2
un
trois
tata
cinq
titi
-------------------------
je voudrai tester le fichier un et le fichier deux en même temps et que ça me renvoi par exemple ceci :
fichier 3
------------------------
non
non
non
ok
non
ok
Voila ce que j'ai déjà fais mais c'est moyen
#! /bin/bash
while read line
do
while read toto
do
if [ $line = $toto ]; then
echo "ok"
else
echo "raté"
fi
done < temp4
done < temp5
Merci de m'aider
A voir également:
- Double lecture de fichier ligne par ligne
- Double ecran - Guide
- Partage de photos en ligne - Guide
- Fichier bin - Guide
- Fichier epub - Guide
- Mètre en ligne - Guide
2 réponses
Salut,
J'ai plutôt l'impression que ce que tu veux faire c'est de chercher si une ligne présente dans "fichier 2" l'est aussi dans "fichier 1" et ce sans se soucier de la place dans le fichier, non ?
;-))
J'ai plutôt l'impression que ce que tu veux faire c'est de chercher si une ligne présente dans "fichier 2" l'est aussi dans "fichier 1" et ce sans se soucier de la place dans le fichier, non ?
[tmpfs]$ cat foo.sh
#! /bin/bash
#set -xv
while read ligne
do grep -x "$ligne" fichier1 >/dev/null
retval=$?
case "$retval" in
0) echo "Ok"
;;
1) echo "Non"
;;
*) exit
;;
esac
done < fichier2
[tmpfs]$ cat fichier1
toto
titi
tata
[tmpfs]$ cat fichier2
un
trois
tata
cinq
titi
[tmpfs]$ ./foo.sh
Non
Non
Non
Ok
Non
Ok
[tmpfs]$Sinon pour comparer 2 fichiers il y a des utilitaires comme "diff" (diff3 pour 3 fichiers), "cmp" et "comm".
;-))