0

我正在编写一些 Python 代码来检测选项 ROM 初始化的开始并发送适当的控制字符以进入选项 ROM 设置实用程序。这在大多数情况下都有效(control-C、control-Y、control-S ...),但是当 control-R 是所需的键时,无法识别字符。

我怀疑这是因为 control-R 是终端正在解释而不是传递的某种特殊控制字符,但找不到对它的任何引用。我试过用 ESC 和其他一些控制字符作为前缀,但似乎无法识别它。代码很简单:

    CONTROL_R = '\x12'
    print("Sending control-R to enter setup")
    spawn_id.send(CONTROL_R)         # send character to console

任何指针或建议表示赞赏。

4

2 回答 2

1

我从一位同事那里了解到,Control-R 在 bash shell 中启动了反向搜索。这导致 shell 在选项 ROM 代码处理之前吃掉了这个字符。感谢那些提出建议的人。

于 2013-11-06T20:38:18.857 回答
1

spawn_id.sendcontrol('r')

从文档: http: //pexpect.sourceforge.net/pexpect.html

于 2013-11-04T22:55:09.287 回答