shell 获取 hive 表的 hdfs 位置


s="$(hive -e "use hadoop;show create table y1" | grep hdfs)"

此时把位置赋予给了变量 s

echo $s

 

 命令拆分:

hive -e "use hadoop;show create table y1"  (注意 , 这是 hive在shell执行 ,

 

效果和在 hive中执行  use hadoop;show create table y1;是一样的 .

不用进入hive中 , hive -e 可以直接理解为在hive环境中运行 ,

" " 中包含的东西都是执行的语句 , 可以连续写 , 和bash一样)

 

 然后提取 包含 hdfs那一行 , 如果不放心 , 可以选择 hdfs://cluster/

| grep hdfs  意思是管道 , 只有包含hdfs 字句的才能通过 , 相当于校验

>.比如

 ls 是显示目录下文件 , grep x 是提取包含x的文件名 , 那么返回的就是一个x.sh


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM