j'ai un message bizarre dans mon resultat !!!

j'ai un message bizarre dans mon resultat !!! - Shell/Batch - Programmation

Marsh Posté le 08-11-2014 à 13:41:35    

bonjour,  
 
quand je un test simple de type :
 

Code :
  1. #!/bin/bash
  2. #!/bin/sh
  3. read a; read b
  4. if [ $a < $b ];
  5. then
  6. echo "a est <b"
  7.         else  echo "a est > b"
  8. fi
  9. exit 0


 
 
 
j'obtien ce resultat  :
 

Code :
  1. 9
  2. 1
  3. ./test.sh: line 61: 1: Aucun fichier ou répertoire de ce type
  4. a est > b


 
que faire please pour le supprimer   ?

Reply

Marsh Posté le 08-11-2014 à 13:41:35   

Reply

Marsh Posté le 08-11-2014 à 15:08:57    

Pourquoi bash et sh dans le même fichier ? C'est volontaire ?
 
Sinon, tu es sûr que tu nous montres le fichier test.sh en entier ?
 
Enfin, ton shell est en français? Franchement c'est nul ne serait-ce que pour les recherches sur le net. J'ai tendance à défendre le français tout le temps, mais il y a des limites.

Reply

Marsh Posté le 08-11-2014 à 15:10:29    

envoie juste le résultat de :
 
cat test.sh
 
pour voir...

Reply

Marsh Posté le 10-11-2014 à 17:25:59    

salut,
 
attention, `<' est un opérateur de comparaison lexicale, pas arithlmétique.

Code :
  1. $ test 10 \< 2 && echo ok || echo ko
  2. ok
  3. $ test 10 -lt 2 && echo ok || echo ko
  4. ko
  5. $ ((10 < 2)) && echo ok || echo ko
  6. ko

parce que le dernier test est réalisé dans une évaluation arithmétique (entre double parenthèses).
 
de plus, même dans un test, et sans protection, il est interprété comme une redirection (ici, de `$b' (un fichier?) vers une commande `$a').
 
et soigne l'indentation, c'est utile au débogage !


Message édité par Profil supprimé le 10-11-2014 à 17:30:14
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed