系统变量列表¶
你可以在路径和参数设置中使用变量,也可以直接在SHELL脚本中使用变量。
例如,配置从EnOS Hive同步数据到目标数据库的数据同步任务,在指定分区时,选择 占位符 为指定分区的方式,然后输入相应的系统变量名。系统将根据指定的变量加载分区信息。
业务相关变量 ¶
在开始使用业务相关的变量之前,需了解以下关键概念:
触发时间:触发任务流的日期。可以为手动触发任务流的时间,也可以为设置的自动触发任务流的时间。
业务时间: 任务流所处理的数据的日期。通常,业务日期为触发时间减去一天(因为默认情况下任务流是对前一天的数据执行处理操作)。
例如,当该任务流的触发时间为 2017-05-27 13:50:00,周期被设置为一天。那么在 2017-05-27 13:50:00 这个时间点被触发的任务流处理的数据为业务日期 2017-05-26 当天的数据。同样的,如果要处理业务日期 2018-03-01 当天的数据,则触发时间需设置为 2018-03-02 这天的某个时间点。
下表使用触发时间 2017-05-27 13:50:00 为例来说明业务相关变量。
变量  | 
描述  | 
格式  | 
业务时间  | 
变量值  | 
|---|---|---|---|---|
${last_week8}  | 
  | 
YYYYMMDD  | 
2017-05-26  | 
20170520  | 
${last_week10}  | 
  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-20  | 
${cal_dt}  | 
  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-26  | 
${cal_dt8}  | 
  | 
YYYYMMDD  | 
2017-05-26  | 
20170526  | 
${cal_dt-n}  | 
  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-25  | 
${cal_dt8-n}  | 
  | 
YYYYMMDD  | 
2017-05-26  | 
20170525  | 
${ncal_dt}  | 
  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-27  | 
${ncal_dt8}  | 
  | 
YYYYMMDD  | 
2017-05-26  | 
20170527  | 
${end_day_this_month8}  | 
对于业务日期,表示本月最后一天。  | 
YYYYMMDD  | 
2017-05-26  | 
20170531  | 
${end_day_this_month10}  | 
对于业务日期,表示本月最后一天。  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-31  | 
${first_day_this_month8}  | 
对于业务日期,表示本月第一天。  | 
YYYYMMDD  | 
2017-05-26  | 
20170501  | 
${first_day_this_month10}  | 
对于业务日期,表示本月第一天。  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-01  | 
${first_day_last_month8}  | 
对于业务日期,表示上月第一天。  | 
YYYYMMDD  | 
2017-05-26  | 
20170401  | 
${first_day_last_month10}  | 
对于业务日期,表示上月第一天。  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-04-01  | 
${last_day_last_month8}  | 
对于业务日期,表示上月最后一天。  | 
YYYYMMDD  | 
2017-05-26  | 
20170430  | 
${last_day_last_month10}  | 
对于业务日期,表示上月最后一天。  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-04-30  | 
${monday_next_week8}  | 
对于业务日期,表示下个星期一。  | 
YYYYMMDD  | 
2017-05-26  | 
20170529  | 
${monday_next_week10}  | 
对于业务日期,表示下个星期一。  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-05-29  | 
${30days_cal_dt}  | 
对于业务日期,表示30天之前。  | 
YYYY-MM-DD  | 
2017-05-26  | 
2017-04-26  | 
${hcal_dt8}  | 
对于业务时间,表示1小时之前,变量值为当前日期。  | 
YYYYMMDD  | 
2017-05-26 00:30:00  | 
20170525  | 
${cal_hr}  | 
对于业务时间,表示1小时之前,变量值为当前小时。  | 
HH  | 
2017-05-26 00:30:00  | 
23  | 
时间相关变量 ¶
下表使用触发时间2017-05-27 13:50:00作为列子来说明时间相关变量。
变量  | 
描述  | 
变量值  | 
|---|---|---|
${this_hour}  | 
出发任务流的时间(小时为单位)  | 
2017-05-27 13:00:00  | 
${unix_timestamp}  | 
对应Unix时间的触发时间  | 
1495864241  | 
非时间相关变量 ¶
变量  | 
描述  | 
变量值  | 
|---|---|---|
${task_id}  | 
当前实例的任务ID  | 
9740  | 
${instance_id}  | 
当前实例ID  | 
9195-20210323075800  | 
${env.APP_CUSTOMER}  | 
生成实例的组帐户  | 
CLP  | 
${env.APP_ID}  | 
实例所属的App ID  | 
a22b94f9-3b9d-40f6-9bd8-4d66b304d930  |