在我的Java代码中使用shell脚本中的参数

时间:2017-10-11 20:40:45

标签: java shell

我必须编写两个脚本,一个用于编译我的代码,另一个用于运行它。我设法用这个脚本编译代码:

#!/bin/bash
javac SimilaridadeP.java

我能够使用这个脚本运行它:

#!/bin/bash
java SimilaridadeP

问题是我需要按照以下命令执行我的第二个shell脚本:

./execute.sh input output

其中输入和输出是我将在Java代码中使用的文件的名称。我现在面临的问题是我不知道如何在我的Java代码中使用这两个名称。

到目前为止,我设法使用此代码获取两个名称:

#!/bin/bash
in=$1
out=$2
java SimilaridadeP

但是因为“SimilaridadeP”是我的java文件的名称,所以它不能像带参数的方法一样被调用,我有点迷失。

2 个答案:

答案 0 :(得分:3)

如果您的java代码已经在读取命令行参数,那么只需要通过这种方式更改bash:

char *adjective = argv[1];
write(1, "This is a %s example\n", adjective, 19 + strlen(adjective));

答案 1 :(得分:2)

这适用于任意数量的参数:

#!/bin/bash
java SimilaridadeP "$@"
相关问题