shell脚本 日志文件批量导入hive

来源:互联网 发布:域名被墙做跳转有用吗 编辑:程序博客网 时间:2024/06/06 19:55

#!/bin/bash

for file in /home/robust/*.txt

do

echo "$file"  #输出文件路径

echo "${file:0-16:8}" #从倒数16位开始,往后截取8位

hive << EOF  #输入重定向

use database;  

load data local inpath '$file' overwrite into table table_name [partition (store_day=$(file:0-16:8))];

EOF

done 


chmod +x ./shell.sh

输入重定向

我们经常在shell脚本程序中用<<EOF重定向输入,将我们输入的命令字符串作为一个执行程序的输入,这样,我们就不需要在那个程序环境中手工输入命令,以便自动执行我们需要的功能。

当然这个标志性字符不能用保留字,最常用的还是EOF。

需要注意的是,第一个EOF必须以重定向字符<<开始,第二个EOF必须顶格写,否则会报错。





原创粉丝点击