用shell命令获得hdfs文件名并动态创建hive表
2017-10-11 17:24
459 查看
#获得文件夹下的文件名并循环每个文件名
files=`hadoop fs -ls /home/out/aidfilter | awk -F " " '{print $8}'`
for name in $files
do
#awk命令按“/”分割第五个
filename=`echo $name | awk -F "/" '{print $5}'`
echo $filename
#执行hive脚本 传递hive临时变量
hive -f test.hql -hivevar tablename=$filename
done
test.hql语句如下要放在你执行本语句的同目录下
create external table if not exists aid${tablename} (Id int,ChannelId int,ChannelName string,PlayDate string,MoniFlag4 string)row format delimited fields terminated by ',' location '/cm/tbl/aid${tablename}';
files=`hadoop fs -ls /home/out/aidfilter | awk -F " " '{print $8}'`
for name in $files
do
#awk命令按“/”分割第五个
filename=`echo $name | awk -F "/" '{print $5}'`
echo $filename
#执行hive脚本 传递hive临时变量
hive -f test.hql -hivevar tablename=$filename
done
test.hql语句如下要放在你执行本语句的同目录下
create external table if not exists aid${tablename} (Id int,ChannelId int,ChannelName string,PlayDate string,MoniFlag4 string)row format delimited fields terminated by ',' location '/cm/tbl/aid${tablename}';
相关文章推荐
- hadoop 创建用户及hdfs权限,hdfs操作等常用shell命令
- hadoop 创建用户及hdfs权限,hdfs操作等常用shell命令
- hadoop 创建用户及hdfs权限,hdfs操作等常用shell命令
- hadoop 创建用户及hdfs权限,hdfs操作等常用shell命令
- hadoop 创建用户及hdfs权限,hdfs操作等常用shell命令
- Hadoop系列-HDFS的Shell脚本命令使用说明(六)
- 点击按钮动态创建控件并获得值的原理及方法
- HDFS shell命令
- hadoop HDFS 常用shell命令
- HDFS的Shell命令
- 1.2 使用Hadoop shell命令导入和导出数据到HDFS
- adb shell命令--命令创建模拟器并启动,命令
- 通过shell命令来控制hdfs
- Hadoop HDFS Shell命令
- Linux下创建shell命令集合——你意想不到的软连接
- HDFS Shell 常用命令
- Shell 命令--文件创建、搜索命令--总结自《Linux Shell 脚本攻略》
- HDFS Shell 命令
- OpenStack动态迁移相关Shell命令
- Hadoop2.x HDFS shell命令