Je souhaite effacer l'écran (sur la machine locale) après avoir quitté mon script d'attente (semi) interactif. Puis-je faire cela dans le script? Voici ce que j'ai essayé, qui a échoué.(Tcl/Expect) efface l'écran après la sortie
#!/usr/bin/expect -f
set env(TERM) vt100
spawn ssh -Y [email protected]
set user username
set pass password
#login sequence
expect "password: "
send "${pass}\r"
sleep .5
#some menu commands to enter ERP....
#...
#...
set CTRLZ \032
set CTRLC \003
set CTRLA \001
#don't time out
set timeout -1
interact {
-reset $CTRLZ {exec kill -STOP [pid]}
$CTRLA {
exp_send "menucmd...\ry\r"
}
$CTRLC {
#clear the host machine screen???
exec clear
exit
}
~~
}
Sur le côté distant, je ne suis pas dans un shell mais dans un programme ERP. Je pourrais sortir sur le shell puis faire un "clear" sur l'hôte distant si c'est ce qui est nécessaire, mais je pense que l'invite de l'hôte distant serait toujours à l'écran.
EDIT: changé pour essayer clair avant « sortie » (sous-question: « exec clair » est exécuté sur la machine en marche Expect bon script?)
Désolé si je suis un noob Tcl. Je lis mon chemin à travers "Exploring Expect" en ce moment et en essayant des choses. – jjclarkson