经过一些切片和切割后,我最终得到了一个相对较小的数据集,我想离线处理。我最后写这个:
store foo into 'foo' using PigStorage('\t');
copyToLocal foo foo;
rm foo;
sh cat foo/part* | sort -k... -o foo.tsv;
sh rm -rf foo;
我想用宏调用替换这5行,但事实并非如此
看起来我可以 - 我做的时候Unexpected character '|'
。
那么,我可以避免在每个脚本中重复这5行吗?
答案 0 :(得分:1)
您必须用引号括起shell命令。 我完全不记得语法。类似的东西:
sh bash "your commands"
如果这对您不起作用,我认为您可以将命令放在单独的shell可执行文件中并从Pig调用它。
答案 1 :(得分:1)