gpt4 book ai didi

shell - 如何动态将日期传递到shell脚本以执行sqoop命令?

转载 作者:行者123 更新时间:2023-12-02 21:02:17 26 4
gpt4 key购买 nike

我正在使用以下命令进行sqoop导入:

#!/bin/bash
while IFS=":" read -r server dbname table; do
sqoop eval --connect jdbc:mysql://$server/$dbname --username root --password cloudera --table mydata --hive-import --hive-table dynpart --check-column id --last-value $(hive -e "select max(id) from dynpart"); --hive-partition-key 'thisday' --hive-partition-value '01-01-2016'
done<tables.txt

我每天都在做分区。
hive 表:
create table dynpart(id int, name char(30), city char(30))
partitioned by(thisday char(10))
row format delimited
fields terminated by ','
stored as textfile
location '/hive/mytables'
tblproperties("comment"="partition column: thisday structure is dd-mm-yyyy");

但是我不想直接给分区值,因为我想创建一个sqoop作业并每天运行它。在脚本中,如何动态地将日期值传递给sqoop命令(格式:dd / mm / yyyy),而不是直接给它?
任何帮助表示赞赏。

最佳答案

您可以使用shell命令date来获取它(ubuntu 14.04):

$ date +%d/%m/%Y
22/03/2017

关于shell - 如何动态将日期传递到shell脚本以执行sqoop命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42945763/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com