****我有 impala 查询 **var= impala-shell --ssl -B --quiet -q " show tables in db_name**"
**并且我想将查询的输出存储到变量中。我可以存储,但它存储了我想使用 Impala 命令行选项删除的额外信息。这是我在结果中得到并想要删除的额外信息****
(在没有启用 Kerberos 身份验证 SSL 的情况下启动 Impala Shell。将不会验证 Impala 服务器证书(设置 --ca_cert 进行更改)连接错误:TTransportException,TSocket 读取在凭据缓存中找到的 0 字节 Kerberos 票证,正在使用安全传输重试连接。
**
注意:[我不想重定向到文件,我知道它有效]
答案1
在我的经验中 ,
您可以在变量中获得查询的输出,如下所示
var=$(impala-shell --ssl -B --quiet -q " show tables in db_name")
这应该只包含查询输出,而不包含任何其他信息,例如
“在没有 Kerberos 身份验证 SSL 的情况下启动 Impala Shell 已启用......在 1 秒内获取 1 行等”
如果您也希望此信息位于变量中,您可以执行以下操作
var=$(impala-shell --ssl -B --quiet -q " show tables in db_name" 2>&1)