我正在尝试从日志文件中匹配包含“”的文本。但它不匹配。
我明白“”对TCL/Expect 有特殊的意义。

因此我尝试了以下方法,但没有运气。

expect -ex {
            "lp -c -demail -ot\\\"[email protected]\\\" /usr/local/spool/pf"
            {
               incr logged
               send_user "\r\n LOGGED #4, $logged \r\n"
            }
            timeout

我尝试使用\、\和\\但还没有运气。

任何人都可以帮助,请..

我的日志文件包含以下行,

exec [lp -c -demail -ot"[email protected]"/usr/local/spool/pf/context/ABC001-1209236.mime]

我需要匹配那条线。

最佳答案

使用 {} 引号,它类似于 shell 的单引号。此外,Tcl 对换行符很敏感,因此您必须将块的左大括号放在上一行

expect {
    {lp -c -demail -ot"[email protected]" /usr/local/spool/pf} {
       incr logged
       send_user "\r\n LOGGED #4, $logged \r\n"
     }
     timeout
}

关于tcl - 期待脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11025689/

10-13 08:40