如何在hive load命令中使用变量

mi7gmzs6  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(392)

我有多个文件要加载到hive中,就像这样

t47_corporation
t47_cp_deposit
t47_id_deposit
t47_individual
...

我尝试使用以下命令加载它

for var in t47*; 
 do 
   hive -e "load data local inpath ${var} overwrite into table ${var}_tmp"; 
done

但我错了
失败:parseexception行1:23不匹配的输入“t47\u id\u deposit”在load语句的“inpath”附近需要stringliteral
我用的是Hive0.13
我该怎么完成这个?谢谢

fdbelqdn

fdbelqdn1#

我找到了答案,谢谢你的鼓励

for var in t47*;

    do 
      hive -e "load data local inpath \"${var}\" overwrite into table ${var}_tmp"; 

    done

此操作已成功执行

kq0g1dla

kq0g1dla2#

尝试此命令:
对于${t*}中的var;do hive-e“将数据本地inpath${var}覆盖到表${var}\u tmp中”;完成

相关问题