从Java更改参数调用Bash脚本

时间:2015-05-28 18:52:14

标签: java bash shell

直接从终端,我可以打电话     sh script.sh "test ing" 1 2 工作正常 - 有3个参数:test ing,1,2

用java调用完全相同的东西     Process call = Runtime.getRuntime().exec("sh script.sh \"test ing\" 1 2") 有4个参数:“test,ing”,1,2

为了澄清,我可以删除引号并调用这两种情况与从java调用具有相同的行为。如何从java调用此脚本以使用其所需的参数行为?

1 个答案:

答案 0 :(得分:3)

您也可以尝试:

Process call = Runtime.getRuntime().exec(new String[]{"sh", "script.sh", "test ing", "1", "2"});

这种方式允许您对传递的参数进行更多控制。