unix修改服务器时间格式,处理unix中的日期格式

以下sql代码将插入文本文件中,作为input.txt的输入:

insert into t_agg_sgsn_gprs_usage

select

served_imsi as imsi,

served_msisdn as msisdn,

NVL(cell_identity,'-1') as cell_id,

NVL(trim(to_char(location_area_code,'99999999')),'UNKNOWN'),

substr(served_imei,1,8) tac_code,

to_char(to_timestamp(record_opening_time,'YYYYMMDDHH24MISS'),'YYYYMMDD')

as call_dt,

'ajay' as loaded_dt,

count(1) as cdr_count,

sum(data_volume_uplink) as uploaded_data_volume,

sum(data_volume_downlink) as downloaded_data_volume,

case

when substr(imsi,6,2)='65'

then substr(imsi,1,9)

else substr(imsi,1,5)

end imsi_prefix

from

t_cdrc_sgsn_pdp_18

where loaded_dt LIKE 'ajay%' AND trim(served_imsi) != ''

AND trim(served_msisdn) != '' AND trim(served_imei) != ''

group by imsi, msisdn, tac_code, cell_id, location_area_code, call_dt;

我正在编写一个unix脚本,它应该为输出提供加1的日期,并附加到一个sql文件(changer.sql),直到指定的日期。

insert into t_agg_sgsn_gprs_usage

select

served_imsi as imsi,

served_msisdn as msisdn,

NVL(cell_identity,'-1') as cell_id,

NVL(trim(to_char(location_area_code,'99999999')),'UNKNOWN'),

substr(served_imei,1,8) tac_code,

to_char(to_timestamp(record_opening_time,'YYYYMMDDHH24MISS'),'YYYYMMDD') as call_dt,

'2012-10-17' as loaded_dt,

count(1) as cdr_count,

sum(data_volume_uplink) as uploaded_data_volume,

sum(data_volume_downlink) as downloaded_data_volume,

case when substr(imsi,6,2)='65' then substr(imsi,1,9) else substr(imsi,1,5) end imsi_prefix

from

t_cdrc_sgsn_pdp_18

where loaded_dt LIKE '2012-10-17%' AND trim(served_imsi) != '' AND trim(served_msisdn) != '' AND trim(served_imei) != ''

group by imsi, msisdn, tac_code, cell_id, location_area_code, call_dt;

insert into t_agg_sgsn_gprs_usage

select

served_imsi as imsi,

served_msisdn as msisdn,

NVL(cell_identity,'-1') as cell_id,

NVL(trim(to_char(location_area_code,'99999999')),'UNKNOWN'),

substr(served_imei,1,8) tac_code,

to_char(to_timestamp(record_opening_time,'YYYYMMDDHH24MISS'),'YYYYMMDD') as call_dt,

'2012-10-18' as loaded_dt,

count(1) as cdr_count,

sum(data_volume_uplink) as uploaded_data_volume,

sum(data_volume_downlink) as downloaded_data_volume,

case when substr(imsi,6,2)='65' then substr(imsi,1,9) else substr(imsi,1,5) end imsi_prefix

from

t_cdrc_sgsn_pdp_18

where loaded_dt LIKE '2012-10-18%' AND trim(served_imsi) != '' AND trim(served_msisdn) != '' AND trim(served_imei) != ''

group by imsi, msisdn, tac_code, cell_id, location_area_code, call_dt;

继续递增并附加到changer.sql文件中,直到指定的结束日期。

以下是我到目前为止的情况,但仍未产生预期的结果:

startdate = `date +"%y-%m-%d"`

set startdate = 2012-10-17

enddate = `date “+%y-%m-%d`

set enddate = 2012-12-22

for($startdate <= $enddate)

do

for file in $(grep -il "ajay" input.txt)

do

sed -e "s/ajay/$startdate/ig" $file >> changer.sql

done

$startdate --startdate="-1 days ago"

done

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值