方法一:hive -e 或者 beline -e 直接导出csv文件
hive -e "SET hive.cli.print.header=true; SELECT id, name, age, sex FROM bxm.kudu_user" | sed 's/\t/,/g' >1111.csv;
exportFile.sh
beeline -u "jdbc:hive2://ip:10000/circ_db" -n admin -p '123456' --showHeader=true --silent=true --outputformat=csv -e "SET hive.cli.print.header=true; $1;" | sed 's/\t/,/g' | grep -v "INFO" >$2;
$1 参数是SQL,$2输出文件
使用
sh exportFile.sh "select id,name from user" /tmp/111.csv
SET hive.cli.print.header=true; 导出标题
方法二 :利用insert overwrite的方式(需登陆hive),将查询结果导出到本地或HDFS,导出结果没有标题
insert overwrite需要登陆:
beeline