自动化DOSbox应用程序

Yuk*_*ita 2 python bash dos dosbox

我有一个非常旧的DOS应用程序,我想自动化.就像有按键等,如果自动化会有很多帮助,因为我可能需要手动运行程序一百多次.

我的问题似乎与这个问题非常相似,但那里提供的解决方案对我来说并不是很有用,而且它已经超过九年了

使用Python自动化旧的DOS应用程序

这个问题与我的唯一不同之处在于除了DOSbox之外我没有选择这样做.这个应用程序是在很多计算机上设置的,所有使用该应用程序的人都知道如何使用DOSBox.迁移到Virtualbox将是一件痛苦而且非常耗时的事情.

我想也许我可以使用xautomaton或uinput在python中以某种方式机械化这个,但我还没弄清楚究竟是怎么做的.该应用程序将主要在Ubuntu上运行.

为了了解该应用程序,我附上了一个截图:

截图

解决方案不一定需要在python中.任何其他语言都可以.任何帮助表示赞赏.

Yuk*_*ita 5

我想通了.虽然这不使用python,但为了做到这一点,我只是捕获了DOSbox的windowid并使用了所有按键xdotool.这是一个例子:

wid=$(xdotool search --class DOSbox)
xdotool key --window $wid m t 5 Return Return i
Run Code Online (Sandbox Code Playgroud)

这将键入"mt5",然后按两次输入,然后键入"i"

一系列按键可以存储在字符串或文件中,并在每次必须运行时迭代地调用.如果有更好的方法来做到这一点,请随时回答.