expect安裝使用

來源:本站原創 Linux 超過809 views圍觀 0條評論

Expect是在Tcl基礎上創建起來的,它還提供了一些Tcl所沒有的命令,它可以用來做一些linux下無法做到交互的一些命令操作,在遠程管理方面發揮很大的作用。
spawn命令激活一個Unix程序來進行交互式的運行。 
send命令向進程發送字符串。
expect命令等待進程的某些字符串。 
expect支持正規表達式并能同時等待多個字符串,并對每一個字符串執行不同的操作.

A. Tcl 安裝 主頁: http://www.tcl.tk下載地址: http://www.tcl.tk/software/tcltk/downloadnow84.tml1.下載源碼包wget http://nchc.dl.sourceforge.net/sourceforge/tcl/tcl8.4.11-src.tar.gzwget http://nchc.dl.sourceforge.net/sourceforge/tcl/tk8.4.11-src.tar.gz2.解壓縮源碼包tar xfvz tcl8.4.11-src.tar.gztar xfvz tk8.4.11-src.tar.gz3.安裝配置cd tcl8.4.11cd unix./configure –prefix=/usr/tcl –enable-sharedmakemake install安裝完畢以后,進入tcl源代碼的根目錄,把子目錄unix下面的tclUnixPort.h copy到子目錄generic中。暫時不要刪除tcl源代碼,因為expect的安裝過程還需要用。B. expect 安裝 (需Tcl的庫)主頁: http://expect.nist.gov/1.下載源碼包wget http://expect.nist.gov/expect.tar.gz2.解壓縮源碼包tar xfvz expect.tar.gz3.安裝配置cd expect-5.43./configure –prefix=/usr/expect –with-tcl=/usr/tcl/lib –with-tclinclude=/tcl源代碼路徑/genericmakemake install

使用示例:

#!/usr/bin/expect # 設置超時時間為 60 秒 set timeout 60 # 設置要登錄的主機 IP 地址 set host 10.20.23.43 # 設置以什么名字的用戶登錄 set name root # 設置用戶名的登錄密碼 set password 111111 #spawn 一個 ssh 登錄進程 spawn ssh $host -l $name # 等待響應,第一次登錄往往會提示是否永久保存 RSA 到本機的 know hosts 列表中;等到回答后,在提示輸出密碼;之后就直接提示輸入密碼 expect { “(yes/no)?” { send “yes\n” expect “Password:” send “$pasword\n” } “Password:” { send “$password\n” } } expect “*” # 下面測試是否登錄到 $host send “uname\n” expect “Linux” #send_user “Now you can do some operation on this terminal\n” exit

文章出自:CCIE那點事 http://www.qdxgqk.live/ 版權所有。本站文章除注明出處外,皆為作者原創文章,可自由引用,但請注明來源。 禁止全文轉載。
本文標題:expect安裝使用
本文鏈接:http://www.qdxgqk.live/?p=166轉載請注明轉自CCIE那點事
如果喜歡:點此訂閱本站
  • 相關文章
  • 為您推薦
  • 各種觀點
?
暫時還木有人評論,坐等沙發!
發表評論

您必須 [ 登錄 ] 才能發表留言!

?
?
萌宠夺宝游戏