java exec正在尝试对文件进行解压缩
我一直在尝试解压一个.tbz文件,但在java应用程序中没有取得很多成功。我现在决定尝试点击命令行来完成这项工作,它目前没有遇到任何错误,但也没有解压文件。有人能看出这有什么问题吗java exec正在尝试对文件进行解压缩,java,tar,runtime.exec,Java,Tar,Runtime.exec,我一直在尝试解压一个.tbz文件,但在java应用程序中没有取得很多成功。我现在决定尝试点击命令行来完成这项工作,它目前没有遇到任何错误,但也没有解压文件。有人能看出这有什么问题吗 String[] cmd = { "tar", "-xjf", "/var/tmp/filename.tbz"}; Process p =Runtime.getRuntime().exec(cmd, null); 编辑,这项工作: List<String> commands =
String[] cmd = { "tar", "-xjf", "/var/tmp/filename.tbz"};
Process p =Runtime.getRuntime().exec(cmd, null);
编辑,这项工作:
List<String> commands = new ArrayList<String>();
commands.add("tar");
commands.add("-xvjf");
commands.add("/var/tmp/filename.tbz");
ProcessBuilder pb = new ProcessBuilder(commands);
Process p = pb.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(
p.getInputStream()));
String readline;
while ((readline = reader.readLine()) != null) {
System.out.println(readline);
}
List命令=new ArrayList();
命令。添加(“tar”);
commands.add(“-xvjf”);
add(“/var/tmp/filename.tbz”);
ProcessBuilder pb=新的ProcessBuilder(命令);
进程p=pb.start();
BufferedReader reader=新的BufferedReader(新的InputStreamReader(
p、 getInputStream());
字符串读取线;
而((readline=reader.readline())!=null){
System.out.println(读线);
}
<代码> cd >代码>命令在中间做什么?也许你的意思是:
String[] cmd = { "tar", "-xjf", "/var/tmp/filename.tbz"};
如果您确实希望执行以下操作,而不是上述操作:
cd /var/tmp
tar -xjf filename.tbz
在本例中,您可以使用。我更改了它,但仍然没有错误和输出,我正在查看processbuilder,第一部分是否需要“tar”,其余部分是字符串?这不会产生任何输出。要读取输出,您需要做更多的工作。但是我给你的代码应该提取文件;命令。添加(“tar”);commands.add(“-xvjf”);add(“/var/tmp/filename.tbz”);ProcessBuilder pb=新的ProcessBuilder(命令);仍然没有提取。这太令人沮丧了。