HIVE-默認分隔符的(linux系統的特殊字符)查看,輸入和修改


這段時間做hive的時候,用到了系統默認分隔符。通常下面2中情況我們需要需要用到分隔符

1,制作table的輸入文件,有時候我們需要輸入一些特殊的分隔符

2,把hive表格導出到本地時,系統默認的分隔符是^A,這個是特殊字符,直接cat或者vim是看不到的

 

分隔符在HIVE中的用途

分隔符

描述

\n

對於文本文件來說,每行都是一條記錄,因此換行符可以分隔記錄

^A(Ctrl+A)

用於分隔字段(列)。在CREATE TABLE語句中可以使用八進制編碼\001表示

^B(Ctrl+B)

用於分隔ARRAY或者STRUCT中的元素,或用於MAP中鍵-值對之間的分隔。在CREATE TABLE語句中可以使用八進制編碼\002表示

^C(Ctrl+C)

用於MAP中鍵和值之間的分隔。在CREATE TABLE語句中可以使用八進制編碼\003表示

 

 

 

 

 

 

 

 

 

 

 

 

Hive 中沒有定義專門的數據格式,數據格式可以由用戶指定,用戶定義數據格式需要指定三個屬性:列分隔符(通常為空格、”\t”、”\x001″)、行分隔符(”\n”)以及讀取文件數據的方法。由於在加載數據的過程中,不需要從用戶數據格式到 Hive 定義的數據格式的轉換,因此,Hive 在加載的過程中不會對數據本身進行任何修改,而只是將數據內容復制或者移動到相應的 HDFS 目錄中。

我們可以在create表格的時候,選擇如下,表格加載input的文件的時候就會按照下面格式匹配

row format delimited 
fields terminated by '\001' 
collection items terminated by '\002' 
map keys terminated by '\003'
lines terminated by '\n' 
stored as textfile; 

 如何查看和修改分割符,特殊符號

1查看隱藏字符的方法

1.1,cat -A filename

1.2,vim filename后 命令模式下輸入

  set list顯示特殊符號

  set nolist 取消顯示特殊符號

 

2修改隱藏字符的方法

首先按照1.2打開顯示特殊符號。進入INSERT模式

ctrl + V 可以輸入 ^符號
ctrl + a 可以輸入A---'\001'
ctrl + b 可以輸入A---'\002'
ctrl + c 可以輸入A---'\003'

 

 注意:雖然鍵盤上你能找到^和A但直接輸入時不行的,必須按照上面的方法輸入。

第一行是特殊符號顏色藍色,第二行直接輸入不是特殊符號。

特殊號直接cat是不可以看見的,但是第二行是可見的,所以不是特殊符號。

 

具體可以參考

http://www.cnblogs.com/kouryoushine/articles/7805593.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM