我正在尝试在Java进程内部检查Unix中的文件是否存在。
我遇到了
该命令返回0或1,但我不知道如何从Java中获取指示。
目前我正在做的是:
我遇到了
Runtime.getRuntime().exec()
的问题。我要运行的命令是test -x $VAR/path/to/file
,请注意路径中的Unix变量。该命令返回0或1,但我不知道如何从Java中获取指示。
目前我正在做的是:
String cmd = "test -x $VAR/filename";
Process proc = Runtime.getRuntime().exec(cmd);
int exitCode = proc.waitFor();
我还可以在命令中添加;echo $?
,这会打印出0/1的值,但我不知道如何获取命令的输出。
File.exists()
和System.getenv()
组合使用可以完成任务,无需外部进程。额外的奖励是这个解决方案也是跨平台的。 - biziclop