3

我正在使用 expect 来响应网络服务。但是,当我执行以下操作时,我在 Wireshark 中注意到:

send "mystring\r\n"

它被在线翻译成:

“我的字符串\n”

我尝试过设置stty raw, 和 , 的各种组合\r\n以及从期望中发送 ASCII 码。Expect 似乎正在将这些组合中的任何一个转换为\n. 问题是服务器似乎需要一个\r\n才能接受输入。我已经能够确定这一点,因为当我在 expect 中使用“interact”,然后^M从 shell 中键入 a (control-v enter) 时,Wireshark 会看到以下字符串:

“我的字符串 \r\n”

通过网络发送出去,服务器正确处理输入。有没有办法在没有翻译的情况下通过期望正确发送这个组合?

4

1 回答 1

5

你是stty直接做还是set stty_init rawexpect脚本中使用?(expectstty命令在您的-nottyinit终端上运行,而不是在pty上运行。)您可能还想查看spawn.

于 2012-04-09T04:38:45.577 回答