您的位置:首页 > 其它

Hive数据导入预处理-分隔符处理

2017-07-06 22:12 197 查看
偶尔会遇到需要把本地数据导入到hive的情况,我们知道hive字段之间的默认分隔符是\x01,而导入的数据字段之间经常是使用制表符分隔。为了在数据导入到hive时能够正常识别,我们需要先对数据进行处理。

想到的最常用的工具自然是sed命令,使用sed替换命令可以简单的把文本中的制表符都替换成我们想要的文本。

那么问题来了,\x01是一个特殊字符,直接在sed命令中输入显然是行不通的。通过网上查找资料,知道了\x01这个字符在linux中显示为^A,那么怎么在sed命令中输入这个字符呢?

操作很简单,首先按组合键:ctrl+v,然后再输入对应的字符的组合键,例如要输入^A的话再按:ctrl+A就行了。所以最终的指令为:

sed -i 's/\t/^A/g' input
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hive