Bonjour,
J ai un probleme de temps de traitement sur un programme en SHELL. Je travail chez uu FAI et pour la supervision temps reel on passe des interrogation sur des equipements réseau. Avec le dev de l'internet le nombre d'equipement à bcp augmenter.
Voici mon code.
Code :
- for Bas in $ListeBAS
- do
- $BIN""zjeton $Bas
- RetCode=$?
- if [ $RetCode == 0 ]
- then
- $BIN""zjetonalloc $Bas get
- expect -f $FichierExpBas $MachineHPOV $UserHPOV $Bas $UserBAS $PassBAS >$DON"Telnet_"$Bas".out.new"
- RetCode=$?
- $BIN""zjetonalloc $Bas free
- fi
- LineFile=`cat $DON"Telnet_"$Bas".out.new" | wc -l`
- print `date +"%d/%m/%Y_%H:%M:%S "`$Bas" "$RetCode" "$LineFile
- echo "tuyau\t"$Bas"\t"$MachineHPOV"\t"`date +"%d/%m/%Y_%H:%M:%S "`"\t"$RetCode"\t"$LineFile>> $FichierLog
- if [ $RetCode != "0" ]
- then
- RedoBas=$Bas" "$RedoBas
- DateFichier=`date +"%d%m%Y_%H%M%S"`
- cp $DON"Telnet_"$Bas".out.new" $DON"Telnet_"$Bas".out."$DateFichier
- else
- cat $DON"Telnet_"$Bas".out.new" | tr -sd "\r" "" > $DON"Telnet_"$Bas".out"
- fi
- sleep 5
- done
|
Le principe c est que j execute un script sur des equipements mais je les fait un par un. J aimerai les faire en parallele. Chaque script expect prend environ 15 % de ressource processur, serait il possible d en faire fonctionner 4 par 4 ?
Est ce possible ? Comment aborder la chose ?
Merci
Message édité par td-rat le 18-08-2005 à 14:44:36