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

kadbb459  于 2021-06-24  发布在  Pig
关注(0)|答案(0)|浏览(167)

我一直试图在pig脚本上执行以下代码:

%declare OLD_YEARS `echo $(for i in $(seq 0 3); do date -d "2018-11-19 ${i} years ago" +%Y; done | awk '$1 <= 2017'| paste -s -d ,)`;

当我执行shell命令时,它会按预期返回结果:

$ echo $(for i in $(seq 0 3); do date -d "2018-11-19 ${i} years ago" +%Y; done | awk '$1 <= 2017'| paste -s -d ,)
2017,2016,2015

但当我在grunt shell上执行此命令时,它会不断返回以下错误:

grunt> %declare OLD_YEARS `echo $(for i in $(seq 0 3); do date -d "2018-11-19 ${i} years ago" +%Y; done | awk '$1 <= 2017'| paste -s -d ,)`;
2018-11-29 19:10:53,904 [main] ERROR org.apache.pig.impl.PigContext - Undefined parameter : i

有人能解释一下吗?
先谢谢你。

编辑

只需补充一点,我的pig版本是0.12.0,它在cdh5.14.2下运行。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题