当前位置: 首页 > news >正文

Hive使用shell调用命令行特殊字符处理

img

1.场景分析

数据处理常用hive -e的方式,通过脚本操作数仓,过程中常常遇到特殊字符的处理,如单双引号、反斜杠、换行符等,现将特殊字符用法总结使用如下,可直接引用,避免自行测试的繁琐。

2.特殊字符处理

#!/bin/bash
if [ -n "$1" ] ;thendo_date=$1date1=${do_date: 0: 8}date2=`date -d "+1 day $date1" +%Y%m%d
elsedate1=`date -d "-1 day" +%Y%m%d`date2=`date +%Y%m%d`
fi
sql="
#设置不打印表头
set hive.cli.print.header=false;
select\`timestamp\`,
#双引号中嵌套双引号,需要加反斜杠concat('[1,\"------------------id=123212-------------------\\\n' ,concat_ws('\\\n',collect_list(content)),'<NE><NE><NE>\\\n\"]') content
from temp_table;
"
echo $qingsu_data
hive  -S -e "$sql" >  /data/$date2.jsonl

输出内容为:

1702006716111,[1,"-------------------id=123212-------------------\n学生: 老师你好。\n老师: 你说。\n学生: 我自己的人生是一塌糊涂。\n老师: 说说看,为什么一塌糊涂?\n<NE><NE><NE>\n"]

假如直接写\n,则

#!/bin/bash
sql="
select\`timestamp\`,concat('[1,\"------------------id=123212-------------------\n' ,concat_ws('\n',collect_list(content)),'<NE><NE><NE>\n\"]') content
from temp_table;
"
echo $qingsu_data
hive  -S -e "$sql" >  /data/$date2.jsonl

输出内容为:

1702006716111,[1,"-------------------id=123212-------------------
学生: 老师你好。
老师: 你说。
学生: 我自己的人生是一塌糊涂。
老师: 说说看,为什么一塌糊涂?
<NE><NE><NE>
"]

3.总结

  • (`)撇号在shell中使用需要用反斜杠转义
  • (")双引号中嵌套双引号需要用反斜杠转义
  • (')单引号中嵌套双引号需要用反斜杠转义
  • (/)反斜杠作为字符使用中使用需要两个反斜杠转义
  • 预留关键字使用两侧需要使用(`)撇号

相关文章:

Hive使用shell调用命令行特殊字符处理

1.场景分析 数据处理常用hive -e的方式&#xff0c;通过脚本操作数仓&#xff0c;过程中常常遇到特殊字符的处理&#xff0c;如单双引号、反斜杠、换行符等&#xff0c;现将特殊字符用法总结使用如下&#xff0c;可直接引用&#xff0c;避免自行测试的繁琐。 2.特殊字符处理 …...

服务器里面很卡,打开文件卡住了一般是什么问题,怎么解决

随着互联网业务的快速发展&#xff0c;各项业务都绕不开服务器。在日常使用中&#xff0c;服务器有着非常重要的作用。而我们日常使用中&#xff0c;也会遇到各种各样的问题。最近就有遇到用户联系咨询德迅云安全&#xff0c;询问自己服务器突然很卡&#xff0c;打开文件都卡住…...

linux 测试网络传输速度

在linux和macos中看不到文件复制速度,往往不清楚smb或者afp的传输速度。 dd命令可以测试磁盘io速度,当然也可以测试网络传输速度。 首先要挂载afp或者smb,此步略过。 然后准备好一定体积的测试文件(最好大点,比如1G以上),使用以下命令测试传输速度: dd if=/smb/TestI…...

GO——锁

公平锁和非公平锁 参考&#xff1a;https://blog.csdn.net/weixin_39309402/article/details/106466843 公平锁&#xff1a; 多个线程排队去获取锁优点 所有线程都能获取到资源 缺点 除第一个线程&#xff0c;其他队列中的线程&#xff08;阻塞中&#xff09;都需要唤醒&…...

分析一个项目(微信小程序篇)三

目录 接下来分析接口方面&#xff1a; home接口&#xff1a; categories接口&#xff1a; details接口&#xff1a; login接口&#xff1a; 分析一个项目讲究的是如何进行对项目的解析分解&#xff0c;进一步了解项目的整体结构&#xff0c;熟悉项目的结构&#xff0c;能够…...

element+vue 之图片放大器

1.安装插件 npm install vue-photo-zoom-pro2.main.js导入 // 放大镜 import VuePhotoZoomPro from vue-photo-zoom-pro Vue.use(VuePhotoZoomPro)3.页面使用 <vue-photo-zoom-pro:url"imgUrl":out-zoomer"true":scale"2"style"width:…...

Vue学习笔记3--全局事件总线

Vue学习笔记3—全局事件总线 1.全局事件总线可以实现任意组件间通信 X需具备的条件&#xff1a; 所有的组件都要能看见X可以调用$on $off $emitVue.prototype.x {a:1, b:2} 可以被所有组件看见VueComponent.protoype.proto Vue.prototype组件实例对象(vc)可以访问到Vue原型上…...

科学和统计分析软件GraphPad Prism mac介绍说明

GraphPad Prism for Mac是一款科学和统计分析软件&#xff0c;旨在帮助研究者、科学家和学生更轻松地处理和可视化数据。 GraphPad Prism for Mac是一款功能强大、易于使用的科学和统计分析软件&#xff0c;适用于各种类型的数据处理和可视化需求。无论您是进行基础研究、临床试…...

[学习笔记]刘知远团队大模型技术与交叉应用L1-NLPBig Model Basics

本节主要介绍NLP和大模型的基础知识。提及了词表示如何从one-hot发展到Word Embedding。语言模型如何从N-gram发展成预训练语言模型PLMs。然后介绍了大模型在NLP任务上的表现&#xff0c;以及它遵循的基本范式。最后介绍了本课程需要用到的编程环境和GPU服务器。 一篇NLP方向的…...

概率论与数理统计————古典概型、几何概型和条件概率

一、古典概型 特点 &#xff08;1&#xff09;有限性&#xff1a;试验S的样本空间的有限集合 &#xff08;2&#xff09; 等可能性&#xff1a;每个样本点发生的概率是相等的 公式&#xff1a;P&#xff08;A&#xff09; A为随机事件的样本点数&#xff1b;S是样本…...

C#编程-使用事件

使用事件 事件是一个动作或发生的事情,例如:鼠标点击、按键、鼠标移动或系统产生的通知。应用程序可以在事件发生的时候做出响应。通知的一个示例是中断。事件是对象发生的消息以表示事件的发生。事件是进程内通信的有效方法。它们对对象时有用的,因为它们标识了单个状态改…...

Dijsktra算法理解笔记

Dijsktra算法理解笔记 学习了柳神的笔记 感谢柳神 Dijkstra算法是处理图问题中的最短路径的问题 最短路径问题可以大致分为两个方向 单源最短路径全局最短路径 以此为基准可以将最短路径算法这样划分&#xff1a; 单源最短路径 Dijkstra &#xff1a;不能求负权边Bellman-F…...

电流检测方法

电路检测电路常用于&#xff1a;高压短路保护、电机控制、DC/DC换流器、系统功耗管理、二次电池的电流管理、蓄电池管理等电流检测等场景。 对于大部分应用&#xff0c;都是通过感测电阻两端的压降测量电流。 一般使用电流通过时的压降为数十mV&#xff5e;数百mV的电阻值&…...

Linux scp命令 服务器之间通讯

目录 一. scp命令简介二. 本地服务器文件传输到远程服务器三. 本地服务器文件夹传输到远程服务器 一. scp命令简介 scp&#xff08;Secure Copy Protocol&#xff09;是用于在Unix或Linux系统之间安全地复制文件或目录的命令。 它使用SSH&#xff08;Secure Shell&#xff09;…...

C语言中的命名规则(期末版)

一、概述 命名规则是编程语言中的重要组成部分&#xff0c;它决定了变量、函数、常量等标符的命名方式。在C语言中&#xff0c;良好的命名规则可以增加代码的可读性和可维护性&#xff0c;提高程序的质量和开发效率。本文将详细介绍C语言中的命名规则&#xff0c;包括标识符的…...

远程开发之vscode端口转发

远程开发之vscode端口转发 涉及的软件forwarded port 通过端口转发&#xff0c;实现在本地电脑上访问远程服务器上的内网的服务。 涉及的软件 vscode、ssh forwarded port 在ports界面中的port字段&#xff0c;填需要转发的IP:PORT&#xff0c;即可转发远程服务器中的内网端…...

超简单的node爬虫小案例

同前端爬取参数一样&#xff0c;输入三个参数进行爬取 注意点也一样&#xff1a; 注意分页的字段需要在代码里面定制化修改&#xff0c;根据你爬取的接口&#xff0c;他的业务规则改代码中的字段。比如我这里总条数叫total&#xff0c;人家的不一定。返回的数据我这里是data.r…...

(每日持续更新)jdk api之FileFilter基础、应用、实战

博主18年的互联网软件开发经验&#xff0c;从一名程序员小白逐步成为了一名架构师&#xff0c;我想通过平台将经验分享给大家&#xff0c;因此博主每天会在各个大牛网站点赞量超高的博客等寻找该技术栈的资料结合自己的经验&#xff0c;晚上进行用心精简、整理、总结、定稿&…...

基于Matlab/Simulink开发自动驾驶的解决方案

文章目录 处理自动驾驶数据 仿真自动驾驶场景 设计感知算法 设计规划和控制算法 生成代码和部署算法 集成和测试 参考文献 使用 MATLAB/Simulink开发自动驾驶&#xff0c;能够深入建模真实世界的行为、减少车辆测试并验证嵌入式软件的功能&#xff0c;从而推进自动驾驶感…...

gitlab部署

系统版本 [rootlocalhost ~]# cat /etc/redhat-release Red Hat Enterprise Linux release 9.1 (Plow)gitlab包位置 https://mirrors.tuna.tsinghua.edu.cn/gitlab-ee/yum/el9/gitlab-ee-16.7.2-ee.0.el9.x86_64.rpm关闭防火墙 [rootlocalhost data]# systemctl stop firew…...

Oracle EBS COA 嵌入 SAP 利润中心段:设计逻辑、哲学、思路、用途、优缺点深度分析

Oracle EBS COA 嵌入 SAP 利润中心段&#xff1a;设计逻辑、哲学、思路、用途、优缺点深度分析先明确核心前提&#xff1a; 你当前场景是集团双系统架构&#xff08;SAPOracle EBS&#xff09;&#xff0c;或Oracle EBS 承接 SAP 迁移 / 数据映射&#xff0c;计划在 EBS 会计科…...

为ClaudeCode配置Taotoken作为备用API解决访问限制

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 为ClaudeCode配置Taotoken作为备用API解决访问限制 基础教程类&#xff0c;指导经常遇到ClaudeCode访问限制的开发者&#xff0c;如…...

从加密狗激活到平台注册:dSPACE MicroAutoBOX II 与 MATLAB 2016b 联调实战记录

从加密狗激活到平台注册&#xff1a;dSPACE MicroAutoBOX II 与 MATLAB 2016b 联调实战记录 在汽车电子控制单元&#xff08;ECU&#xff09;开发领域&#xff0c;dSPACE MicroAutoBOX II 作为一款实时硬件在环&#xff08;HIL&#xff09;测试平台&#xff0c;与 MATLAB/Simul…...

HermesAgent工具如何快速对接Taotoken的多模型服务提供商

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 HermesAgent工具如何快速对接Taotoken的多模型服务提供商 基础教程类&#xff0c;本文将指导使用HermesAgent工具的开发者&#xf…...

如何高效下载B站视频:Python开源工具bilibili-downloader完全指南

如何高效下载B站视频&#xff1a;Python开源工具bilibili-downloader完全指南 【免费下载链接】bilibili-downloader B站视频下载&#xff0c;支持下载大会员清晰度4K&#xff0c;持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader B站视频…...

python flash加一个字段

USE product_db; ALTER TABLE products ADD COLUMN remark TEXT COMMENT 商品备注信息&#xff0c;支持长文本 AFTER cost_price;2. 修改数据访问层&#xff08;product_dao.py&#xff09;需要在以下函数中添加 remark 字段的处理&#xff1a;修改 get_all_products 函数&…...

别让‘单电源供电’坑了你:运放参考电压旁路电容的选型与避坑全攻略

别让‘单电源供电’坑了你&#xff1a;运放参考电压旁路电容的选型与避坑全攻略 在单电源供电的运算放大器电路中&#xff0c;参考电压的稳定性往往决定了整个系统的性能。许多工程师习惯性地在Vcc/2分压点添加旁路电容&#xff0c;却不知这个看似合理的操作可能引发灾难性振荡…...

树莓派Linux命令行实战指南:从基础操作到系统运维

1. 项目概述&#xff1a;为什么你需要一份树莓派命令手册如果你刚拿到一块树莓派&#xff0c;兴奋地接上电源和显示器&#xff0c;看着熟悉的桌面系统&#xff0c;感觉和一台迷你电脑没什么两样。但当你真正想用它做点“正经事”——比如让它24小时运行一个网站、自动备份文件到…...

Open Generative AI Workflow Studio深度解析:可视化AI工作流构建教程

Open Generative AI Workflow Studio深度解析&#xff1a;可视化AI工作流构建教程 【免费下载链接】Open-Generative-AI Open-source alternative to AI video platforms — Free AI image & video generation studio with 200 models (Flux, Midjourney, Kling, Sora, Veo…...

三星固件下载神器Bifrost:跨平台一站式解决方案深度解析

三星固件下载神器Bifrost&#xff1a;跨平台一站式解决方案深度解析 【免费下载链接】Bifrost Cross-platform tool for downloading Samsung mobile device firmware. 项目地址: https://gitcode.com/gh_mirrors/sa/Bifrost Bifrost是一款基于Kotlin Multiplatform构建…...