Hive 如何将配置单元脚本的变量值传递给其中的shell脚本

Hive 如何将配置单元脚本的变量值传递给其中的shell脚本,hive,hiveql,beeline,hivecli,Hive,Hiveql,Beeline,Hivecli,我有一个配置单元脚本,它采用--hivevar形式的参数 var_name=“value”来自beeline,替换在配置单元查询中运行良好 在这个配置单元脚本中,我希望使用作为参数传递的变量运行shell脚本。 我试过了 但是脚本不接受被替换的值,而是将字符串“{variable name}”传递给shell脚本 有什么办法可以解决这个问题吗?请你按照这个-应该是${var_name}-用dollar。嗨,很抱歉搞混了,我已经编辑了这个问题,以便更详细clearer@KevinBobby你找到解

我有一个配置单元脚本,它采用--hivevar形式的参数 var_name=“value”来自beeline,替换在配置单元查询中运行良好

在这个配置单元脚本中,我希望使用作为参数传递的变量运行shell脚本。 我试过了

但是脚本不接受被替换的值,而是将字符串“{variable name}”传递给shell脚本


有什么办法可以解决这个问题吗?

请你按照这个-应该是
${var_name}
-用dollar。嗨,很抱歉搞混了,我已经编辑了这个问题,以便更详细clearer@KevinBobby你找到解决办法了吗?我想知道如何使用!她也在直线上。看来如果你用直线和!sh echo“${var}”,它会逐字打印“echo${var}”。问题是,在从那里访问shell时,试图在beeline中进行变量替换。请遵循此操作-它应该是
${var\u name}
-和dollar。您好,很抱歉造成混淆,我对这个问题进行了编辑,使其更加简洁clearer@KevinBobby你找到解决办法了吗?我想知道如何使用!她也在直线上。看来如果你用直线和!sh echo“${var}”,它将逐字打印“echo${var}”。问题是在从那里访问shell时,试图在beeline中进行变量替换。
!sh /home/tempscript {variable_name}