java - Shell脚本和java参数

标签 java shell unix command-line-arguments

我已经编写了下面的脚本 run.sh 来调用一个 java 类:

java -cp . Main $1 $2 $3 $4

这是我的 java 类(它只显示参数):

public class Main {
    public static void main(String[] args) {
        for (String arg : args) {
            System.out.println(arg);
        }
    }
}

除非我尝试传递包含空格的参数,否则这是有效的。例如:

./run.sh This is "a test"

将显示:

This
is
a
test

我如何修改我的 shell 脚本和/或更改我的参数语法以传递未修改的参数“a test”?

最佳答案

像这样:

java -cp . Main "$@"

关于java - Shell脚本和java参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10577181/

相关文章:

java - 为什么请求源自节点 1 上的 JETTY 服务器,在节点 2 上提供响应?

java - 以编程方式隐藏和显示 Eclipse View

java - 使用 Swing 设计聊天布局

arrays - 在 Bash 中循环遍历字符串数组?

bash - 使用 bash 删除旧文件的最有效方法

java - 安卓白屏

shell - 当作为 sh 启动时,Zsh 不执行大括号扩展?

linux - 使用 shell 脚本查找文件大小

linux - sed -e 's/^M/d' 不工作

linux - bash shell脚本中的最后一行命令是否将退出代码传递给父级?