Hive中变量和属性命名空间:
- hivevar:用户自定义变量(Hive0.8及之后的版本)。可读可写。
- hiveconf:Hive相关的配置属性。可读可写。
- system:Java定义的配置属性。可读可写。
- env:Shell环境定义的环境变量。只可读。
--defind key=value 等价于 --hivevar key=value
hivevar前缀可选,但system:或env:必须有。在 CLI 中,使用 set 命令显示或修改变量值。
set env:HOME;
// 设置变量
set hivevar:foo=bar;
// 获取变量
set hivevar:foo;
参数:
-v:
set; // 打印 hivevar、hiveconf、system、env中所有变量 set -v; // 还打印 Hadoop 中所定义的所有属性
-e:
一次使用命令,多个查询用分号分隔。
在Hive Shell外执行。
hive -e "select * from table limit 3 ";-S:
在Hive Shell外执行。
开启静默模式。在输出结果中去掉“OK”、“Time taken”等行和其他无关紧要的输出信息。
hive -S -e "select * from table limit 3 " > /tmp/query-f:
执行指定文件中一个或多个查询。
在Hive Shell外执行:
hive -f /path/to/file/withqueries.hql;
在Hive Shell内执行:
source /path/to/file/withqueries.hql;-i:
指定一个文件,当 CLI 启动时,在命令提示符出现前会先执行这个文件。!:
在Hive Shell内执行。
在命令前加上 ! 并且以分号结尾可以使用 bash shell 命令。
Hive CLI 不能使用交互式命令,不支持管道功能和自动补全功能。
! /bin/echo "ha ha";dfs:
在Hive Shell内执行。
执行Hadoop命令,将hadoop关键字去掉,以分号结尾就可以。
dfs -ls /;
ctrl+A:移动到行首。
ctrl+B:移动到行尾。
hive.cli.priint.current.db=true; Hive v0.8.0版本增加属性,打印当前所在的数据库名。
hive.exec.mode.local.auto=true;开启本地模式。
hive.cli.print.header=true;打印出字段名称。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。