hive里用shell脚本封装HiveF命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive里用shell脚本封装HiveF命令相关的知识,希望对你有一定的参考价值。
hive里面有个hive -e 命令可以传参数,但是当hql语句多了以后,整个shell脚本会显得比较凌乱,当然有人可能会说hive -f可以实现直接调用一个file,bingo的确如此,但是还是有个很大的缺陷,就是这个不能传参数了,不能传参数在实际的工作中是无法忍受的。于是想到了封装一个命令HiveF,既能直接传入file,又能传参数。其实实现很简单,下面就把代码分享出来。当然还不是很完善,抛砖引玉吧。
#!/bin/bash
. /etc/profile
cat $1 > $1.tmp
for arg in "[email protected]"
do
echo "arg "$arg
flag=`echo $arg | grep ‘-‘`
if [ $arg != $1 ];then
if [ $flag ];then
tmp=`echo $flag | sed s/-//`
else
sed -i s/{$tmp}/$arg/g $1.tmp
echo "nothing"
fi
fi
done
hive -f $1.tmp
rm -f $1.tmp
希望能对大家又说帮助。
本文出自 “AskJoey” 博客,请务必保留此出处http://askjoey.blog.51cto.com/7594056/1791712
以上是关于hive里用shell脚本封装HiveF命令的主要内容,如果未能解决你的问题,请参考以下文章