Re: test de comparaison de fichier en bash

Top Page

Reply to this message
Author: Olivier_Allard-Jacquin
Date:  
To: Guilde
Subject: Re: test de comparaison de fichier en bash


     Petite remarque en passant sur la syntaxe de bash (ca permet
d'éviter de se tirer les cheveux à rechercher une erreur de syntaxe):



     Lorsque en bash tu écris une expression comme celle-ci :


>>>> if [ etat1.txt == etat2.txt ] then


les espaces AVANT et APRES les "[", "==", "]", "-z", etc ...
sont TRES importants. Si tu les oublies, bash te retournera une erreur
de syntaxe.



Donc la syntaxe de ce que tu as écris

>>>    if [etat1.txt==etat2.txt ] then


ne peut dans tout les cas pas marcher ... ;=)


     Lorsque l'on a l'habitude de programmer dans un langage compilé
(C/C++/etc ...) ou avec un langage interprété comme TCL / Perl / etc ...,
ce genre de limitation peut surprendre ...


                              Olivier



>
> Bonjour,
>
> je cherche a creer un script en bash, et j'ai besoin a un moment
> de tester si le contenu de 2 fichiers ( etat1.txt et etat2.txt )
> sont identiques.
> etat1.txt et etat2.txt contiennent une chaine de caractere :
> "Created=Wed Apr 10 04:16:00 2002"
> (sans les guilemets)
>
> je voudrais faire un test de ce type :
>
> if [etat1.txt==etat2.txt ] then
>         echo "pareil"
> else
>         echo "different"
> fi

>
> mais je ne sais pas comment faire.
> Si quelqu'un peut m'eclairer ...