mthoutai

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

expect获取返回值

对于获取多台server状态且不用交互须要用到expect,但有时候expect无法获取返回值。这里解释一下expect怎样获取返回值

  expect -c "
    spawn $1;
    expect {
            \"(yes/no)?

\" {send \"yes\n\";expect \"assword:\";send \"$2\n\"}
            \"assword:\" {send $2\n}
            eof
                }
        expect eof
        catch wait result;
        exit [lindex \$result 3]"

我们能够在脚本里面这样定义。注意最以下的result

这里须要加上转义字符\$。否则会把$result解析成shell里面的变量,但这里面的$result是须要expect解析的。

---

相关学习推荐

根据本文内容,精选以下优质课程:

  1. 趣谈Linux操作系统
    ‍ 刘超 | 轻松理解Linux操作系统核心原理
  2. Linux性能优化实战
    ‍ 倪朋飞 | 别再让Linux性能问题成为你的绊脚石
  3. Nginx核心知识100讲
    ‍ 陶辉 | 全面掌握Nginx核心技术

开发资源

posted on 2017-05-04 15:17  mthoutai  阅读(9268)  评论(0)    收藏  举报