shell中执行hive指令以及hive中执行shell和hdfs指令语法

0. 简介

主要介绍了三种环境命令执行语法:

  1. shell中执行hive指令
  2. hive中执行shell指令
  3. hive中执行hdfs指令

1. shell中执行hive指令

语法:hive [-hiveconf x=y]* [<-i filename>]* [<-f filename> | <-e query-string>] [-S]

说明:

  1. -i 从文件初始化HQL。执行sql文件并留在hive交互窗口;hive -i sql_string.hql

    我们先创建一个sql_string.hql文件:vim sql_string.sql

    i切换到输入模式,输入如下sql,再按esc,输入:wq回车保存脚本文件;

    然后再执行hive -i指令

    输出后,停留再hive交互窗口

  2. -e从命令行执行指定的HQL;

    比如执行一条hive执行并将输出的数据重定向到当前工作目录:hive -e "use mydb;select appid,game_type from dim_game_info limit 10" > game_info.txt;当然也可以把hive参数设置语句配里边,多条语句英文分号分隔即可:hive -e "set mapred.reduce.tasks=10;select appid,game_type from mydb.dim_game_info limit 10;"参数配置只对该会话生效;

  3. -f 执行HQL脚本:hive -f sql_string.hql;这个sql_string.hql是一个包含hive命令的文本文件,案例类同hive -i指令。

  4. -v 输出执行的HQL语句到控制台

  5. -p connect to Hive Server on port number

  6. -hiveconf x=y Use this to set hive/hadoop configuration variables.可用来配置一些hive参数,比如:hive -hiveconf mapred.reduce.tasks=10;设置reduce个数为10个;

  7. -S 设置静默状态,不输出ok等消息;

2. hive中执行shell指令

只需要在指令最前方加上!号再以;结尾即可

比如查看/usr/local/hive/hive_data目录下的文件:!ls /usr/local/hive/hive_data;
清除窗口内容指令:!clear;

查看文本文件前两行:!head /usr/local/hive/hive_data/target_game.txt -n2;

需要注意的是,以下两类不可行:

  1. 重定向,比如(前两行保存到test.txt文件中):!head /usr/local/hive/hive_data/target_game.txt -n2 > test.txt
  2. 管道用法(查看前两行):!cat /usr/local/hive/hive_data/target_game.txt | head -n2

3. hive中执行hdfs指令

在Hive窗口中执行hdfs命令。直接Hadoop命令中的关键字"hadoop"去掉,指令以dfs开头,以分号;结尾即可,例如,

查看HDFS目录下的文件情况:dfs -ls /user/hive/warehouse/mydb.db/;

复制文件到本地系统:

!pwd;查看工作目录

复制到工作目录下:
dfs -get /user/hive/warehouse/mydb.db/ads_mg_core_target_value ./hive_data/target_name_get.txt;

再查看本地系统目录下的文件:!ls ./hive_data;出现了命名为target_name_get.txt的本地文件

更多hdfs命令:点我查看常用hdfs指令

相关推荐
菜鸟小码2 小时前
Hive数据模型、架构、表类型与优化策略
hive·hadoop·架构
IT从业者张某某7 小时前
基于Docker的hadoop容器安装hive并测试
hive·hadoop·docker
IT从业者张某某8 小时前
基于Docker的hadoop容器安装zookeeper
hadoop·docker·zookeeper
菜鸟小码9 小时前
深入理解 Hive 数据模型
数据仓库·hive·hadoop
菜鸟小码10 小时前
Hive环境搭建与配置优化
数据仓库·hive·hadoop
看海的四叔21 小时前
【SQL】SQL同环比计算的多种实现方式
数据库·hive·sql·mysql·数据分析·同环比
菜鸟小码1 天前
Hive数据类型全解析:从基础到复杂类型实战指南
数据仓库·hive·hadoop
IT从业者张某某1 天前
Docker部署伪分布Hadoop
hadoop·docker·容器
隐于花海,等待花开1 天前
1.CONCAT / CONCAT_WS 函数深度解析
大数据·hive
菜鸟小码1 天前
深入浅出 Hive 数据类型:从入门到实战
数据仓库·hive·hadoop