【发布时间】:2024-01-22 06:51:02
【问题描述】:
我想从一个 shell 脚本执行一个 DOMO CLI 的 jar 文件。 jar 文件本身有一些我想在调用主 jar 文件后调用的函数。我面临的问题是,在它执行 jar 文件后,我无法通过 shell 脚本传递要在该 jar 中执行的附加命令。它只是在调用 jar 后停止并且不接受进一步的命令。有人可以帮忙吗?下面是我从 shell 脚本调用的代码。
java -jar XX.jar
命令如下,跟在上面的 jar 后面。因此,一旦我们进入上面的 jar,我们必须一个接一个地执行下面的命令。我不确定如何通过 shell 脚本来实现这一点。
connect -s X.domo.com -t Ysssss
upload-dataset -a -i dhdhdhdh -f /prehdfs/dev/comres/herm/data/yyyy.csv
【问题讨论】:
-
java -jar XX.jar &将启动java进程并在后台运行它(这样您的其他命令就会执行)。 -
@ElliottFrisch 它确实会启动 java 进程,但之后不会运行命令。此后它显示空白屏幕。我执行如下: java -jar XX.jar & connect -s X.domo.com -t Ysssss
-
这些行是否意味着标准地提供给 java 进程?如果是这样,请查看expect。
-
@ElliottFrisch:我在帖子中没有看到任何
&! -
@yogesh:Java 程序以何种方式期望额外的输入?通过命令行,通过标准输入,通过一些配置文件....?