在python中使用当前日期更新脚本

时间:2012-03-30 07:51:04

标签: python linux shell datetime-format

我需要一些帮助来更新当前日期的SQL脚本文件。例如。来自python。 在SQL脚本中,我有一个from->到日期过滤器。得到这个月的记录。我将从Linux机器上的CRON作业运行此脚本。并且需要自动更新from和to日期。

如何?

;SQL script text to update. Before running sqlite3 shell command.
...
and date(tc1.time,'unixepoch')
   BETWEEN date('2012-03-01','start of month')
  and date('2012-04-01','start of month','+1 month','-1 day')
and date(tc2.time,'unixepoch')
 BETWEEN date('2012-03-01','start of month')
   and date('2012-04-01','start of month','+1 month','-1 day')

如果日期系统日期是2012-03-30。

>date +"%Y-%m-%d"
2012-03-30

我希望从2012-03-01到2012-04-01。如果日期是2012-04-20或2012-04-21 ..我希望输出从2012-04-01到2012-05-01。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

这应该可以解决问题:

import datetime
d=datetime.date.today()
start_current_month=datetime.date(d.year,d.month,1)

if d.month==12:
    new_year=d.year+1
    new_month=1
else:
    new_year=d.year
    new_month=d.month+1

start_next_month=datetime.date(new_year,new_month,1)

str_start_current_month=start_current_month.isoformat()
str_start_next_month=start_next_month.isoformat()

str_start_current_month=start_current_month.isoformat()
str_start_next_month=start_next_month.isoformat()