Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache pig 在pig脚本中执行shell命令时出错_Apache Pig - Fatal编程技术网

Apache pig 在pig脚本中执行shell命令时出错

Apache pig 在pig脚本中执行shell命令时出错,apache-pig,Apache Pig,我有一个pig脚本,一开始我想从某个日期生成过去7天的日期字符串(后来用于检索这些天的日志文件)。 我试图用这一行来实现这一点: %声明CMD7input=;对于{1..6}中的i;do d=$(日期-d“$date-i天”+%Y-%m-%d”);input=“\$input\$d,”;完成;echo\$input 我得到一个错误: “错误2999:意外的内部错误。执行shell命令时出错:input=;for i in{1..6};do d=$(日期-d“2012-07-10-i天”“+%Y-

我有一个pig脚本,一开始我想从某个日期生成过去7天的日期字符串(后来用于检索这些天的日志文件)。 我试图用这一行来实现这一点: %声明CMD7
input=;对于{1..6}中的i;do d=$(日期-d“$date-i天”+%Y-%m-%d”);input=“\$input\$d,”;完成;echo\$input

我得到一个错误: “错误2999:意外的内部错误。执行shell命令时出错:input=;for i in{1..6};do d=$(日期-d“2012-07-10-i天”“+%Y-%m-%d”);input=“$input$d,”done;。命令退出,退出代码为127”
然而,shell命令在pig之外运行得非常好。我真的不确定这里出了什么问题


谢谢大家!

我已经找到了一个可行的解决方案,但没有您想要的那么精简,基本上我没有让Pig在declare中执行复杂的shell语句

我首先编写了一个shell脚本(让我们称之为6-days-back-from.sh):

然后是一个pig脚本,如下所示(我们称之为days.pig):

注意,dual是一个目录,包含一个文本文件和一行文本,用于显示变量

我对脚本的调用如下:

pig -x local -param DATE="2012-08-03" days.pig
并得到以下输出:

({(2012-08-02),(2012-08-01),(2012-07-31),(2012-07-30),(2012-07-29),(2012-07-28)})
pig -x local -param DATE="2012-08-03" days.pig
({(2012-08-02),(2012-08-01),(2012-07-31),(2012-07-30),(2012-07-29),(2012-07-28)})