Boucle read

michael_scott Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,
j'aimerai trouver un moyen de renseigner plusieurs ID de job dans le read. et terminer le programme lorsque que je ne rentre plus rien ("")...

j'ai ça:
 while test $job !=" "
        do 
        read -p "renseigner l'ID du job a suivre:  " job
       echo $job
done

et après de pouvoir utiliser les jobs individuellement, à la maniere:
for i in $liste_job
etc...

Avez vous des idées ?
Merci

1 réponse

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

Le script revu et corrigé ;-)
#! /bin/bash

while test -z "${job}" 
      do 
      read -p "renseigner l'ID du job a suivre:  " job
      echo "${job}"
done

j=1
for i in  ${job}
do echo "ID ${j} : ${i}"
((j++))
done


$ ./foo.sh 
renseigner l'ID du job a suivre:

renseigner l'ID du job a suivre: 1 22 333 4444
1 22 333 4444
ID 1 : 1
ID 2 : 22
ID 3 : 333
ID 4 : 4444

0
michael_scott Messages postés 58 Date d'inscription   Statut Membre Dernière intervention  
 
comment faire si je souhaite voir l etat de mes jobs, puis voir le suivant.. pour revenir au premier:
for i in ${job}

do
echo "job en cours $i"
state=`bjobs $i |grep -v "STAT"| awk '{print $3}'`

while test $state = "RUN"

do

echo "en cours etat : $state "

sleep 6

done

if test $state != "RUN"

then
echo "job termine"
exit
fi
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
pour votre exemple :
job en cours 1 : RUN
job en cours 22 : RUN
job en cours 333 : RUN
etc

En fait un next i serait parfait (?)
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431 > michael_scott Messages postés 58 Date d'inscription   Statut Membre Dernière intervention  
 
En fait un next i serait parfait (?)
Voir du côté de la commande
shift
du shell.
0
Utilisateur anonyme
 
shift
manipule les paramètres positionnels.

si je récapitule :
1- entrer les processus à suivre
2- afficher l'état de processus à suivre
c'est ça ?
0
michael_scott Messages postés 58 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai essayé, mais le shift ne marche pas dans la boucle while ( j ai essayé avec du if et effectivement ça fonctionne, or il me faut du while..)
0
michael_scott Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   > Utilisateur anonyme
 
oui qqchquicommenceparQ
0