[Script Shell] Problème pour exécuter des commandes

Problème pour exécuter des commandes [Script Shell] - Shell/Batch - Programmation

Marsh Posté le 24-01-2008 à 11:11:51    

Bonjour à tous  :)  
 
Je suis confronté à deux types de problèmes, mon but est de créer un script qui soit capable de lire un fichier qui contient des commandes.
 
Voici la portion de code qui me pause problème :

Code :
  1. # lecture du fichier input avec frequence
  2. if [ "$PARAM" = "" ] ; then
  3.    cat $FICIN | grep ^$1 | while read ligne
  4.    do
  5.    # syntaxe = freq:nom:commande
  6.    CDE=`echo $ligne | awk 'BEGIN { FS=":" } { print $3 }'`
  7.    $CDE
  8.    done


 
Si je fais un echo $CDE -> top -d 5 -n 3 | grep Xorg >> tmpXorg
Ca me revoie donc bien la bonne commande, par contre impossible de l'exécuter avec les pipes ! Alors qu'un copier / coller fonctionne  :pt1cable:  
 
J'ai donc tenté une autre approche (pas très propre certes) :

Code :
  1. if [ "$PARAM" = "" ] ; then
  2.    cat $FICIN | grep ^$1 | while read ligne
  3.    do
  4.    # syntaxe = freq:nom:commande
  5.    echo $ligne | awk 'BEGIN { FS=":" } { print $3 }' > .todo
  6.    chmod +x .todo && ./.todo
  7.    done


 
Cette fois la commande me revoie : top: failed tty get
Par contre si je lance le fichier .todo dans un shell ca marche, et si je créé un autre fichier qui le lance ca marche aussi.
 
J'aurais aimez savoir si quelqu'un à déjà été confronté à ce genre de problème, il est clair que la première solution à l'air mieux mais je peut aussi utiliser la seconde ou même une autre ...

Reply

Marsh Posté le 24-01-2008 à 11:11:51   

Reply

Marsh Posté le 24-01-2008 à 11:26:21    

essaie avec "eval $CDE"

Reply

Marsh Posté le 24-01-2008 à 11:53:40    

Merci pour la réponse :-)
 
Malheureusement j'ai déjà essayé, ca à l'air de mieux marcher mais je me retrouve dans le deuxième cas avec :
top: failed tty get
 

Reply

Marsh Posté le 24-01-2008 à 12:04:21    

Essaie en ajoutant le paramètre "-b" à top, pour le faire passer en batch mode.
 

Spoiler :

http://forum.ubuntu-fr.org/viewtopic.php?pid=1485931
J'ai répondu avec 10min d'avance. [:jar jar]


 

Reply

Marsh Posté le 24-01-2008 à 12:08:58    

Ouais, vive le double post :( promis je le referais plus lol
 
En tout cas merci !!! ca a marché ...

Reply

Marsh Posté le 24-01-2008 à 13:36:19    

C'est pas un double post, j'suis juste tombé dessus avec google en cherchant ton erreur. [:god]
 
J'le connaissais même pas ce forum avant. [:cosmoschtroumpf]

Reply

Sujets relatifs:

Leave a Replay

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