Ceci est l'extrait de code que je utilise dans le script bash following:comment utiliser s'attendre à l'intérieur d'un script bash
for user_input in `awk '{print}' testfile_$$.txt`
do
ipaddress=`echo $user_input | cut -d';' -f 1`
command="${config_mode}`echo $user_input | cut -d';' -f 2-`"
ping -w 1 $ipaddress 1> /dev/null 2> $ERR_LOG_FILE 1> $LOG_FILE
if [ $? -eq 0 ];then
ssh "[email protected]$ipaddress" "$command"
>> $LOG_FILE
fi
done
Comment puis-je utiliser attends pour automatiser la connexion ssh dans ce script.
Je suis très nouveau pour attendre et a commencé à tester ce (il a échoué):
#!/usr/bin/bash
set force_conservative 0 ;# set to 1 to force conservative mode even if
;# script wasn't run conservatively originally
if {$force_conservative} {
set send_slow {1 .1}
proc send {ignore arg} {
sleep .1
exp_send -s -- $arg
}
}
#
set timeout -1
spawn ssh [email protected] {uname -a; df -h}
match_max 100000
expect "*?assword: "
send -- "bar01\r"
expect eof
dois-je écrire le tout recommencer script bash en expect script ou il attendre peut être utilisé à l'intérieur script bash si elle peut se faire:
plus sur i besoin d'obtenir la variable bash $ commande, $ username, mot de passe $, $ ipaddress et l'utiliser dans la partie attendue
quelle solution proposeriez-vous? ou puis-je créer un attendre scénario et l'appeler à partir du script bash juste pour la connexion, la gestion des erreurs, l'exécution, LOGFILES
merci pour l'alternative, mais ce qui peut faire pour obtenir le nom d'utilisateur variables bash, ipaddress et command9 (uname -a; df -h) dans l'attente est là de toute façon – munish
bien que vous pourriez exporter la variable et puis se référer à elle comme une variable d'environnement .... donc exporter VARIABLE1 = quelque chose alors de s'attendre à partie essayer de l'appeler – Vahid
export MYVAR = "abc123 " /usr/bin/s'attendre << EOF set myvar =" $ env (MYVAR) " envoyer" echo $ myvar \ r " EOF – Vahid