Expect script

Bonjour,
j'ai un fichier texte contenant n lignes que je veux lire une par une

dans un script bash, j'utilise la boucle for
mais pour un script expect, ca ne marche pas

J'utilise expects script car je me connecte en ssh sur un serveur et je souhaite copier le nom des dossiers écris sur le fichier texte enquestion depuis le serveur sur mon pc

voila le script que j'ai fait:

#!/usr/bin/expect

spawn ssh yang

expect "Password: " {
sleep 1
send "motdepass\r"
} timeout {
send_user "Error connecting"
}

#for file in `cat flightname_wcb_DJF03`;
#do

foreach file $flightname_wcb_DJF03 {

expect " > "
send "cd /raid3/flexpart/vouj/simu_5clust\n"
expect " > "
send "scp -r $file name@adress.fr:/climato/BTraj/
expect "Password: " {
sleep 1
send "v,o1u;3j\r"
} timeout {
send_user "Error connecting"
}
close

voila, si qq'un peut m'aider
merci bcp
Configuration: Linux Suse
Firefox 3.0.1

4 réponses

  1. Modérateur
    Salut,

    Avant d'approfondir pour rien, la commande foreach en bash je ne connais pas ;-((

    T'en es sûr ou c'est plutôt un autre shell (genre csh) ?
    1. non jen suis pas sur du tout pour foreach
      1. Modérateur
        Je demandais surtout confirmation pour ton shell ;-(
    2. non c'est en bash ....
      1. Modérateur
        Donc déjà ta commande "foreach" n'est pas bonne ;-((
    3. bin oui

      mais as t-eu une solution ?
      1. Modérateur
        Peut être en mettant tes commandes dans un script à la racine de ton répertoire où tu te logues et en lançant ce script...