shell中循环调用hive sql 脚本的方法

 更新时间:2018年06月19日 15:51:36   作者:dear_csdn  
今天小编就为大家分享一篇shell中循环调用hive sql 脚本的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

脚本tt.sh的内容如下:

#!/bin/bash

params=$1
for param in $params
 do
 echo $param
 done

运行方式为:sh tt.sh "1 2 3 4 5"

输出为:

1
2
3
4
5

所以参考上面的命令,可以把hql的脚本写为如下方式,就可以循环执行sql:

功能:查找字符串 comments 中的param第一次出现的位置 ,返回的是位置数字

#!/bin/bash

params=$1
for param in $params
 do
 hive -e "insert overwrite local directory '/tmp/$param'
 row format delimited fields terminated by '\t'
 select locate('$param',comments) as position from tb_a;"
 done

功能:查找评论中出现关键字的内容,没有关键词的内容过滤掉

#!/bin/bash
params=$1
for param in $params
 do
 hive -e "insert overwrite local directory '/tmp/$param'
 row format delimited fields terminated by '\t'
 select position from 
  (select locate('$param',comments) as position from tb_a where position != '0') a 
 where a.position !='0' ;"
 done

以上这篇shell中循环调用hive sql 脚本的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 3个备份系统文件并邮件发送的Shell脚本分享

    3个备份系统文件并邮件发送的Shell脚本分享

    这篇文章主要介绍了3个备份系统文件并邮件发送的Shell脚本分享,3个脚本分别对应了普通需求脚本、推荐脚本、大文件需求脚本,需要的朋友可以参考下
    2014-09-09
  • Linux shell脚本中字符串连接的方法

    Linux shell脚本中字符串连接的方法

    这篇文章主要介绍了Linux shell脚本中连接字符串的方法,大家参考使用吧
    2013-12-12
  • linux修改文件名的三种方法

    linux修改文件名的三种方法

    我们在使用linux系统过程中为了便于记忆或整理维护,经常需要对文件名进行修改,下面文章介绍了linux系统的三种修改文件名称的方式,需要的朋友可以参考下
    2023-09-09
  • Linux进程通信(IPC)方式简介

    Linux进程通信(IPC)方式简介

    linux下进程间通信的几种主要方式:管道(pipe)和有名管道(FIFO)、信号(signal)、消息队列、共享内存(shared memory)、信号量(semaphore)、套接字(socket),本文对这些做简单介绍
    2013-12-12
  • Linux中文件权限目录权限的意义及权限对文件目录的意义

    Linux中文件权限目录权限的意义及权限对文件目录的意义

    本文给大家介绍Linux中文件目录权限的意义及Linux的权限对于文件与目录的意义,涉及到linux 文件、目录、权限相关知识,对本文感兴趣的朋友一起学习吧
    2016-01-01
  • Shell脚本批量清除Nginx缓存

    Shell脚本批量清除Nginx缓存

    这篇文章主要介绍了Shell脚本批量清除Nginx缓存,本文直接给出实现代码和执行效果图,需要的朋友可以参考下
    2014-12-12
  • Linux Shell中判断进程是否存在的代码

    Linux Shell中判断进程是否存在的代码

    有时候我们需要在linux中判断进程是否存在,然后再执行相应的操作,这里简单的分享下,方便需要的朋友
    2013-01-01
  • linux系统下dd命令的使用方法

    linux系统下dd命令的使用方法

    这篇文章主要介绍了linux系统下dd命令的使用方法,dd命令的功能是把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换
    2014-01-01
  • Linux命令每天必学之 useradd/adduser 新增用户

    Linux命令每天必学之 useradd/adduser 新增用户

    Linux下useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。接下来通过本文给大家介绍每天必学Linux命令之 useradd/adduser 新增用户的相关知识,需要的朋友参考下吧
    2018-10-10
  • linux下编译boost.python简单方法

    linux下编译boost.python简单方法

    下面小编就为大家带来一篇linux下编译boost.python简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03

最新评论