zoukankan      html  css  js  c++  java
  • expect下命令不能解析通配符*的问题

    曾遇到这样一段代码:(Bash脚本)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #!/usr/bin/expect -f
    set HOST "192.168.102.1"
    set USER "codefor"
    set PASS "codefor"
    set BOOKFILE "/home/codefor"
     
    #upload
    spawn "scp *.zip $USER@$HOST:$BOOKFILE"
    expect {
        "*password*" {send "$PASS ";}
    }
    expect eof;

    这样的话,会报不存在*.zip的错误,即不能解析通配符*

    在命令前加上bash -c即可。

    如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #!/usr/bin/expect -f
    set HOST "192.168.102.1"
    set USER "codefor"
    set PASS "codefor"
    set BOOKFILE "/home/codefor"
     
    #upload
    spawn bash -c "scp *.zip $USER@$HOST:$BOOKFILE"
    expect {
        "*password*" {send "$PASS ";}
    }
    expect eof;
  • 相关阅读:
    c++语法(2)
    c++语法(1)
    前端之 BOM和DOM
    JavaScript
    CSS属性相关(续)
    CSS属性相关
    CSS选择器
    前端之CSS
    HTML常用标签
    HTML介绍
  • 原文地址:https://www.cnblogs.com/hanframe/p/5667665.html
Copyright © 2011-2022 走看看