系统变量列表


你可以在路径和参数设置中使用变量,也可以直接在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}
  • 对于触发时间,表示上个星期。
  • 对于业务日期,表示业务日期减去6天。
YYYYMMDD 2017-05-26 20170520
${last_week10}
  • 对于触发时间,表示上个星期。
  • 对于业务日期,表示业务日期减去6天。
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}
  • 对于触发时间,表示之前的第n+1天。
  • 对于业务日期,表示之前的第n天。
YYYY-MM-DD 2017-05-26 2017-05-25
${cal_dt8-n}
  • 对于触发时间,表示之前的第n+1天。
  • 对于业务日期,表示之前的第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