配置单元-e带分隔符
问题描述:
我想从下面的配置单元表中导出数据,但它生成的文件带有制表符作为分隔符。导出时可以将分隔符指定为逗号或制表符吗?配置单元-e带分隔符
hive -e "
use default;
set hive.cli.print.header=true;
select * from test1;
" > /temp/test.txt (or .csv)
感谢 Ĵ
答
可以通过管道将您的数据,并使用一个简单的sed命令将数据转换为所需的输出格式。在sed命令下面用逗号替换选项卡。默认输出是Tab。您可以相应地更改输出。
hive -e "use default;set hive.cli.print.header=true;select * from test1;" | sed 's/[\t]/,/g' >/temp/test.csv
+0
谢谢Prabhat。我确实尝试了sed命令,我看到的是它在标签的末尾加逗号.ike ABC,123,2016,..而不是命令,如果我想用pipe作为分隔符,我可以使用? – sam
+0
hive -e“use default; set hive.cli.print.header = true; select * from test1;” | sed's/[\ t]/|/g'> /temp/test.csv 这将替换管道标签 –
[出口蜂巢表到CSV在HDFS]的可能的复制(https://开头计算器。 com/questions/30224875/exporting-hive-table-to-csv-in-hdfs) – alejandrogiron