Apache pig 从pig脚本中提取tar.gz文件

Apache pig 从pig脚本中提取tar.gz文件,apache-pig,tar,hue,Apache Pig,Tar,Hue,我想从pig脚本的tar.gz文件中提取一个文件,但是: 当我使用grunt时: grunt> sh tar xzvf /root/input/file.tar.gz \-\-wildcards '*AppSession*' \-\-directory /root/output/ 所需文件在输入目录中提取,而不是在输出目录中提取 使用色调pig编辑器时: sh tar xzvf /root/input/file.tar.gz \-\-wildcards \'*AppSession*\'

我想从pig脚本的tar.gz文件中提取一个文件,但是:

当我使用grunt时:

grunt> sh tar xzvf /root/input/file.tar.gz \-\-wildcards '*AppSession*' \-\-directory /root/output/
所需文件在输入目录中提取,而不是在输出目录中提取

使用色调pig编辑器时:

sh tar xzvf /root/input/file.tar.gz \-\-wildcards \'*AppSession*\' -C /root/output/
我得到这个错误:

2015-12-23 17:51:20031[uber SubtaskRunner]错误 org.apache.pig.tools.grunt.grunt-错误2997:遇到 例外。java.io.IOException:sh命令“tar xzvf” /root/input/file.tar.gz--通配符 *AppSession*-C/root/output'失败。有关详细信息,请查看输出日志


使用色调时,脚本将在集群中的某个位置执行,因此您的本地文件不会在那里。您应该将它放在Pig脚本的分布式缓存或HDFS中。@Romain以及为什么选项
--directory
-C
不能在grunt中工作?