球球看世界

关于expect脚本自动执行

andy.zhang 2016年01月27日 编程脚本 608 评论关闭

1,编写如下代码并存成test.sh文件

     #!/usr/bin/expect -f

        set timeout 30

        spawn scp -r 192.168.11.251:/var/local/svn/conf/* /var/local/svn/conf/

        expect "password:"

        send "123!@#qwe\r"

        interact

    以上代码不可以直接在shell下执行,应该要用/usr/bin/expect test.sh这个来执行

    或者添加可执行权限chmod 700 test.sh然后./test.sh

2,在crontab里执行

    以上代码在crontab里执行是没有得到相应的结果的,经查

    原来在crontab里不能用interact命令而是用

    expect eof

    exit

    经测试,把interact换成上面两行后,执行结果和在shell 下用expect调用一样。


发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

球球看世界

我的微信号:zxq138888888 (左侧二维码扫一扫)欢迎添加!

LNMP(PHP7.0.3)升级