Linux将hiveSQL字段当做命令执行解决办法

132 阅读1分钟

一、问题背景

本人想将一堆hive SQL 语句(大概几百行)放入Python 脚本中,这样只执行一次脚本就可以完成多个 hive 表的各种操作。

(关于 Python 执行 hive SQL 的方法,我写在了另一篇博客里:blog.csdn.net/u011675334/…

本人使用的 hive 数据库中有一个字段叫 out,为了防止被当做 hive SQL 的关键字,所以要使用反引号 ``(位于 Tab 键上方,数字 1 左边),写成 `out`。但将该代码放入 Python 脚本中,执行时报错:找不到 out 命令。

二、解决方法

上述问题发生的原因是 Linux 会将反引号中的内容当做命令先执行,所以 out 字段被当做了 Linux 命令,故报错。

解决方法是使用反斜杠进行转义,改为 \out\\ 即可。

以上,问题解决~