首页 > 解决方案 > 如何在 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

这给了我一个空文件而不是不同的日期。我哪里错了?

标签: bashhivetext-files

解决方案


如果您删除分号,它将起作用。通过添加分号,重定向 (>>) 和 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

推荐阅读