2

$TCL Expectでは、アンカーとして使用するためにエスケープする必要がありますか? たとえばt、最後の位置にある場合に一致させるには、次のようにする必要があります。

t$ を期待する

しかし、これは機能しません。TCL が を解釈しているためと思われ$ます。成功せずに次のすべてを試しました

expect -re {t$}
expect t\$
expect t\\$

...しかし、運が悪い。ヘルプ

私がそれに取り組んでいる間、どのように応答を一致させ、応答全体をキャプチャしますか。つまり、次のようなものだと思います

expect ^*$

しかし、私$は壊れています。

4

2 に答える 2

0

acheong87が指摘しているように、expectスクリプトは応答に改行文字を含めます。これを確認するには、glen jackman tipを使用して、スクリプトの先頭にexp_internal1を追加します。したがって、文字「t」が最後の位置にある場合に一致させるには、次のようにします。

expect -re {t\n$} 

応答をキャプチャする1つの方法と、応答全体は次のとおりです。

expect -re {^.*.\n$}
于 2013-01-13T17:35:33.173 に答える