bash - 如何在 bash 脚本中将 hive 的结果存储到本地的文本文件中?
问题描述
我想从配置单元中的日期列中查询不同的日期,并将其存储到本地的文本文件中。
hive -e "SELECT distinct(part_date) AS distinct_date FROM ${table_name} where partition_date between ${start_date} and ${end_date}"; >> local/path/staging_temp.txt
这给了我一个空文件而不是不同的日期。我哪里错了?
解决方案
如果您删除分号,它将起作用。通过添加分号,重定向 (>>) 和 hive 命令是单独的 bash 命令。另外,我将通过 > 重定向输出流,而 2>&1 会将错误流重定向到输出流被重定向的位置,即
hive -e "SELECT distinct(part_date) AS distinct_date FROM ${table_name} where partition_date between ${start_date} and ${end_date}" > local/path /staging_temp.txt 2>&1
推荐阅读
- java - IntelliJ:更改 Java 的类或数据类型的颜色
- python - 如何在python中将大图像分成小块
- typescript - 错误:将 Thrift 与 Typescript 一起使用时找不到名称“Thrift”
- java - 如何向 Jersey API (JAVA) 发送多个数据引用
- c# - 如何使用鼠标在 WPF 中创建左右滑动?
- python - 如何将序列化的 API 视图数据放入另一个视图?
- spring-boot - 在 SpringBoot 2.x(2.1.0) 中自定义过滤过程一次但产生重复数据
- perl - 如何将日期格式化为“2018-10-29 11:49:33”
- mysql - MySql 从表数据返回错误的时间
- java - 无法更改片段 Android 的容器 ID