[Script .csh] Problème de condition.

Ghis -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
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.

1 réponse

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    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