Execution d'un script BASH à partir d'un KSH

Execution d'un script BASH à partir d'un KSH - Shell/Batch - Programmation

Marsh Posté le 26-06-2012 à 16:12:49    

Bonjour,
 
J'essaye tant bien que mal d'exécuter un script BASH à partir d'un script KSH.
Le script s'execute bien mais lorsqu'il rend la main au script KSH celui-ci a perdu ses variables.
J'explique :
 
Le script KSH passe par une boucle WHILE pour lire un fichier txt.
Pour chaque ligne lu il exécute un script.
Et quand c'est un script BASH, a la fin de son exécution, le script KSH sort de la boucle WHILE alors qu'il y a encore des lignes à lire.
 
J'espère être assez claire...
Ca fait des heures que je suis dessus et je n'y arrive pas !
 
Si quelqu'un a une idée....
MERCI.
 
Unix / Solaris 10


Message édité par bfe95 le 26-06-2012 à 16:14:11
Reply

Marsh Posté le 26-06-2012 à 16:12:49   

Reply

Marsh Posté le 26-06-2012 à 16:35:27    

Attention a une chose : certaines commandes peuvent vider ton entrée standard.
Par exemple si tu es dans une boucle de type :

Code :
  1. cat fichier | while read LIGNE


et que dans ton script bash tu as des commandes ssh, il faut absolument que tu mettes l'option -n a ton ssh, sinon ton read de départ peut être vidé (donc fin de boucle des la sortie du bash).

 

De même, inclure des read dans read ne fonctionne pas et peux avoir des effets de ce type.

 

EDIT :

 

extrait du man ssh sur l'option -n

Citation :

    -n   Redirects  stdin  from  /dev/null  (actually,  prevents reading from stdin).

 


Message édité par Nukolau le 26-06-2012 à 16:40:13
Reply

Marsh Posté le 27-06-2012 à 09:44:39    


FORMIDABLE !!
 
C'est exactement ce qui me manquait !
 
Merci beaucoup.
 

Reply

Sujets relatifs:

Leave a Replay

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