系统相关
首页 > 系统相关> > java-当Runtime.getRuntime().exec调用Linux批处理文件找不到其物理目录时

java-当Runtime.getRuntime().exec调用Linux批处理文件找不到其物理目录时

作者:互联网

这个问题已经在这里有了答案:            >            Get the source directory of a Bash script from within the script itself                                    58个
我有一个Java应用程序,并且我使用Runtime.getRuntime().exec来调用批处理文件.当我使用Runtime.getRuntime().exec来调用Linux批处理文件时,该批处理文件找不到自己的目录.
我在批处理文件中使用了pwd命令,但它返回了应用程序路径.
我需要批处理文件自身的物理路径.
我怎样才能做到这一点?

解决方法:

您必须使用ProcessBuilder才能完成:

ProcessBuilder builder = new ProcessBuilder( "pathToExecutable");
builder.directory( new File( "..." ).getAbsoluteFile() ); //sets process builder working directory

标签:processbuilder,bash,pwd,java
来源: https://codeday.me/bug/20191121/2051148.html