我编写了java应用程序来读取键盘输入并执行其他一些工作。 如何在后台运行该应用程序并使其在Linux后台中读取键盘输入?
答案 0 :(得分:0)
进程只能在其终端/ UI窗口/等时读取键盘输入。有重点。您可以做些什么,例如如果你在服务器上有适当的访问权限,那就是从套接字读取Java应用程序并从键盘将数据发送到该套接字。
E.g。
$ socket -sl 11555
另一个tty:
$ nc 0 11555 | yourjavabinary
现在,无论您在第一个tty中输入什么,您的Java应用程序都会将其作为输入接收。
答案 1 :(得分:0)
如果您的Java应用程序失焦,我认为不可能读取键盘事件。您可以使用一些JNI组件并从java中调用它。
答案 2 :(得分:0)
你的意思是shell中的背景?或窗口管理器中的背景?
对于shell,您可以尝试使用script(1)程序。它启动一个新shell并捕获文件的所有输入和输出。你必须弄清楚哪些行是输入。