Contenu | Rechercher | Menus

Annonce

Ubuntu-fr.org recrute toujours de nouveaux modérateurs, avec de l'expérience.

Ubuntu 16.04 LTS
Réservez vos DVD et clé USB Ubuntu-fr (premières livraisons mi-mai)

Si vous avez des soucis pour rester connecté, déconnectez vous et reconnectez vous depuis ce lien en cochant le case
Me connecter automatiquement lors de mes prochaines visites.

M.A.J. en cours du forum possibilité de bug, nous faisons le maximum pour les résoudre au plus vite

#1 Le 22/09/2009, à 09:29

yanick_cangaeld

programme argument et problème avec while

Bonjour,

Voilà un petit programme qu'on me donne avec la boucle while . Quand je l'exécute en csh ça m'affiche : while: Expression Syntax.

#!/bin/csh
@ index=2
while($index<=$#argv)
  if($argv[$index]==$argv[1]) then
      echo reussi
      else @ index+=1
  endif
end

Pourquoi ça m'affiche ça et pourquoi ce programme ne s'exécute-il pas ?

Hors ligne

#2 Le 22/09/2009, à 13:15

bloublou

Re : programme argument et problème avec while

mets des espaces autour de <=

pour faire

while($index <= $#argv)

Hors ligne

#3 Le 22/09/2009, à 15:34

yanick_cangaeld

Re : programme argument et problème avec while

J'ai fait comme tu m'as dit mais maintenant quand je veux exécuter le script ça ne fait plus rien ?

Hors ligne

#4 Le 22/09/2009, à 20:09

bloublou

Re : programme argument et problème avec while

J'ai pas bien compris ce que tu cherchais à faire, mais voici un truc un peu modifié qui fonctionne :

@ index=2
while ($index <= $#argv)
  if ($argv[$index] == $argv[1]) then
      echo reussi
      exit
      else @ index+=1
  endif
end

Lance le comme ceci. Il affichera « réussi » si le premier de ses arguments se trouve en 2 exemplaires, sinon il n'affichera rien.
Par exemple

./test.csh bonjour bite poil bonjour

Affichera reussi

./test.csh 1 2 3 4 5

N'affichera rien.

./test.csh bonjour poil poil

N'affichera rien.

Si tu cherches à faire quelque chose de précis, demande-moi, j'essayerai de t'aider tongue

Hors ligne

#5 Le 22/09/2009, à 21:50

yanick_cangaeld

Re : programme argument et problème avec while

En fait ce programme doit permettre de repérer si un argument est égal au premier argument . ça a l'air de fonctionner de la façon dont tu as ecrit le code , je te remercie

Hors ligne