/ / Coloque o aplicativo Java em segundo plano e faça a leitura a partir do teclado no Linux - java, linux, input, teclado, background-process

Coloque o aplicativo Java em segundo plano e faça-o ler a partir do teclado no Linux - java, linux, entrada, teclado, background-process

Eu escrevi o aplicativo java que lê a entrada do teclado e faz algum outro trabalho também. Como posso executar esse aplicativo em segundo plano e fazê-lo ler a entrada do teclado em segundo plano no Linux?

Respostas:

0 para resposta № 1

Um processo só pode ler a entrada do teclado sejanela do terminal / interface do usuário / etc. tem o foco. O que você pode fazer, por exemplo se você possui direitos de acesso apropriados no servidor, é necessário que o aplicativo Java seja lido de um soquete e envie dados para esse soquete a partir do teclado.

Por exemplo.

em um tty:

$ socket -sl 11555

em outro tty:

$ nc 0 11555 | yourjavabinary

Agora, o que você digitar no primeiro tty, seu aplicativo Java receberá como entrada.


0 para resposta № 2

Eu não acho que é possível ler eventos do teclado se o seu aplicativo java estiver fora de foco. Você pode usar alguns componentes JNI e invocá-lo a partir do seu java.


0 para resposta № 3

Você quer dizer fundo em uma concha? Ou experiência em um gerenciador de janelas?

Para um shell, você pode tentar algo com o programa script (1). Ele lança um novo shell e captura todas as entradas e saídas em um arquivo. Você teria que descobrir quais linhas são a entrada.

http://man7.org/linux/man-pages/man1/script.1.html