我有一个由第三方开发者提供的 JAVA-Jar-File。文件从 STDIN 读取并写入 STDOUT。
我能够将 JAR 文件配置为写入日志文件。
但我还必须将输入源从 STDIN 重写为命名管道,这样我就可以通过自己的应用程序向 java-pocess 发送命令。
我已经尝试过从管道(bash)中读取这两件事:
cat < pipeline_name | java -jar external_application.jar
这适用于第一个命令。收到第一行输入后,“猫”终止,之后我无法发送命令。
我的另一个尝试:
tail -f pipeline_name | java -jar external_application.jar
这工作正常。所有命令都传递给 JAVA 应用程序。但是:如果 java-application 正在终止,tail -f 将像以前一样运行。
我需要一个解决方案,如果 JAVA 进程终止,则停止从管道读取。
非常感谢