目前ssh工具很多,但是能夠輕鬆運用到自動化指令碼中,可以輕鬆適配任何環境,滿足ssh互動式登入的tcl工具包很少
下面是個人在tcl自動化過程中比較滿意的一款自動化指令碼
通過使用管道方式分裝plink.exe實現ssh命令互動
plink.exe通過命令列方式登入linux伺服器,tcl通過cmd方式呼叫plink
plink.exe放在指令碼當前目錄
;#by enter
#!/bin/sh
# plink.tcl \
proc waittime
vwait a
}proc openpipe
set currentpath [pwd]
cd $exepath
set channel [open "|plink.exe $pipestr" r+]
cd $currentpath
fconfigure $channel -block 0 -buffering none -buffersize 1 -encoding utf-8
fileevent $channel readable [list getecho $channel]
return $channel
}proc connect read
set $read ""
set timeout 0
while read]]>0} elseif
waittime 100
incr timeout 100
}regsub -nocase -all h|\e\[\d(;\d)m|\e\(b\e\[m} [set $read] "" $read
puts [set $read ]
return $channel
}proc tclclose
if [catch errmsg ]
return ture;
}set ch [connect ssh 192.168.251.10 root 123]
puts [sendcommand $ch "ls -ll"]
tclclose $ch
Expect自動化互動式程式
expect是乙個用來實現自動互動功能的軟體套件,是基於tcl的指令碼程式設計工具語言 首先 要安裝expect 直接使用yum安裝即可 yum install expect y每次我們進行ssh連線時都需要輸入密碼 而且首次需要輸入yes來確認 root alice ssh p 22 jenny ...
Linux Shell互動式自動化運維程式
expect 是linux作業系統下的乙個用來處理互動操作,系統預設是沒有安裝expect庫,所以執行expect會提示找不到命令,需要手動安裝,其它安裝也比較簡單,可以通過二進位制原始碼包編譯配置進行安裝,也可以通過網路借助yum源來安裝,yum源安裝比較簡單 我們下面借助expect庫來實現li...
Linux Shell互動式自動化運維程式
expect 是linux作業系統下的乙個用來處理互動操作,系統預設是沒有安裝expect庫,所以執行expect會提示找不到命令,需要手動安裝,其它安裝也比較簡單,可以通過二進位制原始碼包編譯配置進行安裝,也可以通過網路借助yum源來安裝,yum源安裝比較簡單 我們下面借助expect庫來實現li...