67,515
社区成员
发帖
与我相关
我的任务
分享
String PATH = "/XXXXX/a.sh";
try {
Process num = Runtime.getRuntime().exec(PATH);
} catch (IOException e) {
e.printStackTrace();
}
String[] PATH = {"/XXXXX/a.sh","1"};
try {
Process num = Runtime.getRuntime().exec(PATH);
} catch (IOException e) {
e.printStackTrace();
}
调用,也可以,然后我就把这个脚本放到另一个linux上运行,就出现了一个很有趣的问题,调用不了了,当然,我抽取的只是一部分片段,我在这个里面打了log,log显示成功通过,这个a.sh的作用是生成一个文件,但是执行过之后文件没有生成,而且exec根本没有报错,waitfor的结果是0;我检查过a.sh的执行权限,两个环境权限一样都是777,配置也相同,代码更是一模一样,用户都是root,脚本单独用命令执行没有问题,但是这套代码单独运行在我的开发环境上时可以使用,运行在另一套环境上时不能运行,有哪位能提供下带参shell脚本的调用方法或者能用各位的经验帮忙判断下问题出在哪,为什么这个在这两套环境中执行处不同的结果,谢谢了,另外这部分代码单独放到main里面执行是没有问题的,只是在项目中运行的时候一个生成了文件另一个没有生成,麻烦各位凭经验判断下,谢谢