Shell脚本调用命令行应用程序

时间:2013-09-08 17:50:30

标签: java linux shell

我有一个Java程序,我想在linux shell脚本中调用它。 Java程序从命令行获取用户输入。

我在某处读到了我可以使用echo来模仿用户输入,如下所示:

 java myProgram
 echo 1000
 echo

但是这对我不起作用,程序仍在等待用户输入。有什么我做错了吗?我无法想象这是一项艰巨的任务。

3 个答案:

答案 0 :(得分:2)

您可以使用echo,但在管道中。

echo 1000 | java myProgram

如果要发送文件,可以使用cat

cat file.txt | java myProgram

答案 1 :(得分:1)

为什么不直接将值作为参数传递

java myProgram 1000

答案 2 :(得分:0)

我认为您应该找到java进程的进程ID,然后写入其/proc目录。

假设Java进程的id为4321,然后输出到

/proc/4321/fd/0