java - (Linux) 如果 ssh 关闭,如何取回 java 应用程序(等待输入)?

标签 java linux service

当运行java应用程序或其他东西时 让我们在 ssh 中说:

**please type y/n :** 

应用程序会继续等待并继续运行。 问题是我如何回到这种情况,让我在 ssh 关闭时输入 y 或 n?

或者正在运行的java服务可以在运行时中断并接受新命令(在ssh关闭之后)?

答案是“GNU SCREEN”

最佳答案

我想你是说你通过 ssh 连接到另一台机器并运行这个程序,然后 SSH 连接在等待提示时关闭。

正如 SBI 指出的,您可以尝试运行“screen”程序,然后在“screen”内运行 java 命令,这会为您的程序创建一个假 TTY;然后您可以关闭 SSH,并使用“screen -x”返回到原来的位置。

如果您没有在“屏幕”内启动进程,我不知道有什么方法可以“返回”它正在等待输入的 TTY。但是,如果您想要一种在不使用 TTY 的情况下与正在运行的服务进行通信的方法,您可以考虑使用“kill”向进程发送特定信号。然后,java 代码可以捕获信号并采取相应的行动。

关于java - (Linux) 如果 ssh 关闭,如何取回 java 应用程序(等待输入)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17294365/

相关文章:

java - 如何将文本文件中的行复制到 JComboBox 中?

java - 2 compareTo 方法在同一个类定义中被覆盖,我怎么能强制使用第二个?

linux - 如何为用户清除 linux 机器上的缓存内存?

python - salt 栈 : using execution modules in SLS

java - Android 服务线程

java - 如何使用 spring AOP 而不是代理来记录实际的存储库类名?

Java 翻译点

linux - 将 bash 脚本上传到 MAAS 部署的 Ubuntu 机器上

Python3 Tkinter - 将输入(y)写入子进程的控制台

Android 服务对位置更改执行操作