【发布时间】:2016-02-26 22:34:44
【问题描述】:
我有一个进程,我用 Java 启动了一个(非 Java)CLI 进程,我想以编程方式向它发送 Ctrl+I 组合键。
有可能吗?
【问题讨论】:
-
是的。有可能的。 java 键绑定应该可以解决问题。
-
@andrewdleach 也许我遗漏了一些东西,但我不明白这将如何帮助我以编程方式将 Ctrl+I 发送到远程 CLI 进程。
-
对不起,在控制台中ctrl+I是做什么的?它是否映射到中断?
-
@ChiefTwoPencils 我不这么认为。它只是一个控制符号。
-
如果外部进程在其标准输入中查找 Ctrl-I 字符(顺便说一下,与 Tab 相同),GreenGiant 的解决方案将起作用。由于这不起作用,该过程显然正在其控制台(tty)上寻找按键,这是其他程序根本无法访问的。您需要编写本机代码来创建虚拟 tty 并让进程使用它; JNI 是您允许 Java 调用本机代码作为 Java 程序的一部分的方式。