COMMENT 'Sample Table'
ROW FORMAT DELIMITED
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
'xxxxxxx'
ROW FORMAT DELIMITED
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION
'xxxx'
所需的输出:
COMMENT 'Sample Table'
ROW FORMAT DELIMITED
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
'xxxxxxx'
ROW FORMAT DELIMITED
STORED AS ORC
LOCATION
'xxxx'
第二次出现“ STORED AS”之后,下一个单词应为ORC,并应删除下三行。在Unix中可以使用什么命令?
答案 0 :(得分:0)
我找到了一个解决方案。如果输入保存在文件sample.txt中 以下命令给出了预期的输出。
awk'/ STORED AS INPUTFORMAT / {c ++; if(c == 2){sub(“ STORED AS INPUTFORMAT”,“ STORED AS ORC \ nzzzz”); c = 0}} 1'sample.txt | sed -e'/ zzzz /,+ 3d'