當前位置:編程學習大全網 - 編程軟體 - 如何向expect腳本裏面傳遞參數

如何向expect腳本裏面傳遞參數

expect是壹個用來實現自動交互功能的工具,使用expect-send來實現交互過程。腳本的執行方法與bash shell不壹樣,如:expect example.sh

向壹個腳本傳遞參數,bash shell是使用$1,$2...來接收參數的,而epxect則將腳本的執行參數保存在數組$argv中,在腳本中壹般將其賦值給變量:set 變量名 [lindex $argv 參數]

實例:

寫壹個自動登陸遠程主機的腳本,通過參數傳遞主機名,帳戶,密碼

1)編寫腳本

#!/usr/bin/expect

set ip [lindex $argv 0]

set username [lindex $argv 1]

set passwd [lindex $argv 2]

spawn ssh -l $username $ip

expect {

"yes/no" { send "yes\r";exp_continue }

"password:" { send "$passwd\r" }

}

#expect eof

interact

註意:若登陸後便退出遠程終端,則寫expect eof即可。

2)執行腳本

expect autologin.sh 172.24.6.29 root redhat

  • 上一篇:2024專業課冪學管綜高端磚石VIP全 程的網盤鏈接是什麽 求發下
  • 下一篇:prosys opc ua java sdk多少錢
  • copyright 2024編程學習大全網