的使用echo-e "\ 029"
也不起作用。但是如果直接在终端会话中使用strg++ - alt gr>它可以工作。]
我必须更具体地问我的问题:
我通过 Telnet/SCPI 连接了一个射频发生器 (AGILENT)。
如果我在终端上执行本手册并在会话结束时按CTRL++ ALT GRfor ]'^]' 然后正确关闭 scpi 会话,我可以键入quit
以正确关闭 telnet 会话。
射频发生器的显示屏上没有错误消息。所以它应该是。
如果我通过脚本执行此操作,SCPI 会话似乎无法识别中断信号条件“^]”,并且将在脚本结束后强制关闭(telnet 和 scpi)。-> 消息:“被外部主机断开”。不幸的是,我在 RF 发生器的显示屏上收到错误消息 -> “无效标头”等。
连接成功后出现:Connected to 192,168.10.66 Escape Character is '^]' -> 这就是问题所在。终端中的手动输入正常工作,脚本不起作用。
我的脚本看起来像这样:
function getIDNMessage()
{
(
echo open $1 $2
sleep 1
echo "*IDN?"
sleep 1
echo –e "\029" # or echo “^]” does not work well
sleep 1
echo "quit\r"
sleep 1
) | telnet > scpi_telnet.log 2>&1
}
getIDNMessage 192.168.10.66 7777