zoukankan      html  css  js  c++  java
  • expect安装去测试

    1.下载expect和tcl

    下载地址:http://download.csdn.net/download/tobyaries/5754943

    2.安装expect

    tar -zxvf tcl8.4.11-src.tar.gz 
    tar -zxvf expect-5.43.0.tar.gz 
    cd tcl8.4.11/unix
     ./configure
    make && make install

    cd expect-5.43

    ./configure --with-tcl=/usr/local/lib/ --with-tclinclude=/data/software/tcl8.4.11

    make && make install

    3.脚本测试

    [plain] view plain copy
     
     print?在CODE上查看代码片派生到我的代码片
    1. #!/usr/bin/expect -f  
    2.   
    3.   
    4. set timeout 30  
    5. set name [lindex $argv 0]  
    6. set pw [lindex $argv 1]  
    7. log_user 0  
    8. spawn passwd $name  
    9. for {set i 1} {$i < 3} {incr i} {  
    10.     expect "*password:" {send "$pw "}  
    11. }  
    12. expect "*successfully"  
    13.     send_user "Password updated successfully "  
    14. expect eof  



    [解析]

      很简单的程序,首先把第一个参数赋值给变量name作为用户名,把第二个参数赋值给pw作为密码。然后关闭标准输出,就是类似shell的 "> /dev/null",然后spawn开启子进程运行passwd程序,因为会重复输入2次密码,所以这里我们用到了TCL语法的for循环,执行2次密码输入。最后匹配到successfully字样的就输出修改成功,然后退出脚本。

  • 相关阅读:
    MYSQL索引
    Objective-C:KVO
    iOS UIKit:viewController之动画(5)
    iOS UIKit:viewController之Segues (4)
    iOS UIKit:viewController之Present (3)
    iOS UIKit:viewController之定义(2)
    iOS UIKit:viewController之层次结构(1)
    iOS UIKit:view
    iOS UIKit:App
    Objective-C:Block
  • 原文地址:https://www.cnblogs.com/anruy/p/5889232.html
Copyright © 2011-2022 走看看