首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将字符串变量作为shell脚本参数传递?

如何将字符串变量作为shell脚本参数传递?
EN

Stack Overflow用户
提问于 2013-06-27 18:54:50
回答 1查看 927关注 0票数 2

我将字符串变量设置为

代码语言:javascript
复制
String var1 = "I am"
String var2 = "here"
String cmd = ("sh /path/shell.sh \""+var1+"\" \""+var2);
Runtime rt = Runtime.getRuntime();
rt.exec(cmd);

但是,当我从shell脚本执行echo $1 $2时,我得到的输出是I am。为什么引号不起作用?

EN

回答 1

Stack Overflow用户

发布于 2013-06-27 19:47:41

您需要按如下方式调用该命令:

代码语言:javascript
复制
Process process = new ProcessBuilder().command("sh", "/path/shell.sh", var1, var2);
Scanner scan = new Scanner(process.getInputStream());
while(scan.hasNextLine()) {
    //...
}
//...
scan.close();
process.destroy();

您可能也希望将其包装在try-catch块中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17341241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档