如何在shell脚本中使用expect

时间:2012-04-10 14:03:34

标签: shell expect

请你帮我编写一个示例代码,用shell脚本中的expect连接远程系统(通过ssh)。

请查找下面给出的代码示例..

#!/bin/bash
HOST="148.147.179.118"
USER="root"
PASS="spirit"
expect -c "
             # exp_internal 1 # uncomment for debugging
             spawn ssh root@$HOST 
             expect { 
               "*password:*" { send $password\r\n; interact } 
               eof { exit }
             }
             exit
         "

收到错误“* Command not found * ,提示输入密码,在提供密码后连接到系统但没有从远程系统返回。

任何人都可以帮我解决一些问题。

1 个答案:

答案 0 :(得分:1)

除其他外,请注意你在脚本中有“标记,所以你实际上并不希望将整个内容打包在内部”标记可以吗?

我可能会建议使用shell“HERE”文件吗?如果您不熟悉<<运算符,请阅读shell手册页。