[Script .csh] Problème de condition.

Fermé
Ghis - 31 janv. 2006 à 13:22
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 31 janv. 2006 à 13:57
Bonjour,
Voilà j'ai un problème sur quelques lignes toutes betes d'un script.

set CAS=`cat $Monfichier | sed 1\!d`

echo $CAS

if ( $CAS == "CAS1" ) then
echo "CAS1"
endif

Donc comme vous pouvez le constater il n'y a rien de plus simple..mais ça ne marche pas..
La premiere commande recupere la ligne 1 de mon fichier (cette valeur=CAS1) je l'affiche, c'est OK, la valeur est bien récupérée mais rien à faire ça ne passe pas dans le if....
Quelqu'un à une idée du problèmei?
Merci.
A voir également:

1 réponse

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
31 janv. 2006 à 13:57
Salut,

Ben chez moi ça passe !!!
Bon j'ai du modifier le filtre avec "sed" (passé pas chez moi ta commande), mais l'autre partie passe très bien :-\
Essaie de lancer le script en l'appelant par le shell et en spécifiant le débogage :
csh -xv ton_script
Sinon chez moi ça donne ça :
[jp@Mandrake tmpfs]$ cat Monfichier
CAS1
CAS2
CAS3

[jp@Mandrake tmpfs]$ cat script.csh
#!/bin/csh

set CAS=`sed -n 1p Monfichier`
echo ${CAS}

if ( ${CAS} == "CAS1" ) then
echo "$CAS"
endif

[jp@Mandrake tmpfs]$ csh -xv script.csh
set CAS=`sed -n 1p Monfichier`
set CAS=`sed -n 1p Monfichier`
sed -n 1p Monfichier
echo ${CAS}
echo CAS1
CAS1

if ( ${CAS} == "CAS1" ) then
if ( CAS1 == CAS1 ) then
echo "$CAS"
echo CAS1
CAS1
endif
endif
[jp@Mandrake tmpfs]$
;-))
0