2017-07-16 81 views
0

我正在嘗試使腳本通過SSH連接連接到服務器並執行一些命令。第一部分的工作原理:ssh以編程方式連接和命令

#!/usr/bin/expect -f 
spawn ssh address 
expect "password:" 
send "password\r" 
interact 

但在那之後我想執行多個命令,e.g cd到目錄,推出一些更腳本等有什麼辦法來實現這些東西呢?

回答

1

嘗試以下操作:

#!/usr/bin/expect 
set login "any_user" 
set addr "some_address" 
set pw "any_pwd" 

spawn ssh -t [email protected]$addr 
expect "[email protected]$addr\'s password:" 
send "$pw\r" 
expect "~" ; # put here string from your server prompt 
send "mkdir some_dir\r" 
interact 

這是命令之一,你可以在它嘗試其他命令,如CD,任何其他腳本也讓我們知道,如果有任何疑問。

+0

是的,這個作品, 非常感謝! 據我所知,每次我想發送任何東西時,我需要設置expect命令 – Anton