从java执行tar命令无法按预期工作

时间:2016-01-28 11:41:17

标签: java bash tar

从java执行tar命令无法按预期工作。下面是相同的代码行。 tar文件正在创建,但它是空的,尽管目录中有匹配的tar文件。不确定可能是什么问题。任何输入都会有所帮助。

注意:当我在终端上执行它时,相同的命令工作正常,tar球具有所有预期的文件。

String cmd = "tar -cvzf /tmp/logs.tar.gz /home/test/log/status.*"
try {
    Process p1 = Runtime.getRuntime().exec(cmd);
    p1.waitFor();
} catch (IOException e) {
    e.printStackTrace();
} 

1 个答案:

答案 0 :(得分:1)

显然扩展status.*不起作用。试试没有它。作为替代方案,解决Java代码中的输入文件/目录。使用java.nio执行此操作。

正如Gyro Gearless在评论中提到的那样,也可以将tar命令包装在脚本中并从Java代码中执行。