Linux脚本的date用法

linux 时间加减法操作:
加减操作:
date +%Y%m%d                   //显示前天年月日
date -d "+1 day" +%Y%m%d       //显示前一天的日期
date -d "-1 day" +%Y%m%d       //显示后一天的日期
date -d "-1 month" +%Y%m%d     //显示上一月的日期
date -d "+1 month" +%Y%m%d     //显示下一月的日期
date -d "-1 year" +%Y%m%d      //显示前一年的日期
date -d "+1 year" +%Y%m%d      //显示下一年的日期
普通转格式:
date -d "2009-12-12" +"%Y/%m/%d %H:%M.%S"
2009/12/12 00:00.00
[root@VM_114_9_centos ~]# date -d "20171231""-1 day"  +"%Y%m%d"
20171230

Linux脚本的date用法:
[upay@bj-upay-xhm-4f03-p1-m610-etm-02 ~]$ date +"%Y%m%d"
20160317
[upay@bj-upay-xhm-4f03-p1-m610-etm-02 ~]$ date +"%Y%m%d" -d "-8 days"
20160309
[upay@bj-upay-xhm-4f03-p1-m610-etm-02 ~]$ echo  `date +"%Y%m%d" -d "-8 days"`
20160309
获取上个月的linux时间
echo  `date "+%Y%m" -d last-month`
当前时间  echo `date "+%Y-%m-%d %H:%M:%S"`
前14天的  echo `date +"%Y%m%d" -d "-14 days"`
去年一月  echo `date "+%Y%m" -d "-1 year -4 month"`
echo  `date "+%Y%m" -d last-month`
获取上个月的linux月末时间  
date -d `date +%y%m01`"-1 day" +%Y%m%d
echo $(date -d `date +%y%m01`"-1 day" +%Y%m%d)
date -d `date +%e`'days ago' +%Y%m%d

Linux如何得到上月月末日期 

`date +%d` | xargs -I{} date -d '-{} day' +%Y%m%d

Linux如何得到当月月末日期

date +"%Y%m01" #当月第一天
date -d"$(date -d"1 month" +"%Y%m01") -1 day" +"%Y%m%d" #当月最后一天 日期时间减去30天得到的  2月份存在bug
date +"%Y%m$(cal|sed 'N;${s/.* //;P;d};D')" #当月最后一天
按天循环:
#! /bin/sh  
nowdate=`date +%Y%m01`  #本月第一天  
startdate=`date -d"$nowdate last month" +%Y%m%d` #上个月第一天  
enddate=`date -d"$nowdate last day" +%Y%m%d` #上个月最后一天  
#遍历上个月的每一天  
while (( $startdate <= $enddate ))  
do  
   echo $startdate  
   startdate=`date -d "+1 day $startdate" +%Y%m%d`  
done 

 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值