Vérification de fichier dans un script shell

user -  
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,

Je voudrais savoir si en script shell, il était possible de récupérer une chaîne de carcatère d'un fichier.
Le script demande de rentrer une combinaison de chiffres. L'utlisateur rentre sa combinaison. Le script vérifie le fichier qui contient qui contient la combinaison ( En occurence la première ligne du fichier. ) et renvoie un message positif si la comparaison entre les deux chaînes sont corrects, un meesage d'erreur si cela ne correspond pas.
Voila, cela est-il possible ?
Je vous remercie d'avance si vous avez des idées ...
@+
A voir également:

4 réponses

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

Voila, cela est-il possible ?
Oui c'est possible ;-))

Des pistes :
man sed
man awk
man bash (commande "read")
man cut

Ton devoir est à rendre pour quand ?
0
user
 
BIen pour les pistes....
non ce n'est pas un devoir, mais désireux d'apprendre le shell, et dans un ensemble général, à savoir ce qui est possible à faire avec.

Merci.
@+
0
pmx Messages postés 138 Statut Membre 28
 
Un truc comme ça devrait suffire :


read nombre
N=$(cat $fichier | head -n1 | tr -d ' ')

if [ "$nombre" = "$N" ]; then
ok
else
pas pareil
fi
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Ou encore comme ça (et il existe encore d'autres possibilités) :
[jp@Mandrake tmpfs]$ cat resume.txt
lsof 468
 latest revision: ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
 latest FAQ: ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/FAQ
 latest man page: ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_man

[jp@Mandrake tmpfs]$ cat essai.sh
#! /bin/bash
# essai.sh

echo "Entrez votre numéro identifiant : "
read numero
var=`sed -n '1p' resume.txt | awk ' { print $2 }'`
if [ "$var" = "$numero" ]
then
echo "Vous avez entré le bon identifiant! "
else
        echo "Vous n'avez pas entré le bon identifiant ! Sorry ! "
fi

[jp@Mandrake tmpfs]$ sh essai.sh

Entrez votre numéro identifiant :
468
Vous avez entré le bon identifiant!

[jp@Mandrake tmpfs]$ sh essai.sh
Entrez votre numéro identifiant :
587
Vous n'avez pas entré le bon identifiant ! Sorry !

[jp@Mandrake tmpfs]$
;-))
0