linux date -d @,date -d

date -d

2013-10-16

date -d参数可以根据当前日期获取更多我们需要的日期。现在:date -d now

1、上个月末

date -d `date +%y%m01`"-1 day" +%d搜索

2、往前倒

date -d -`date +%d`day +%d

3、条件

if [`date -d tomorrow +%d` == 01 ];

if [`date -d tomorrow +%e` == 1 ];

crontab月末执行实例

0 4 * * * if [`date +%d -d tommorrow` = 01 ];then;command

4、上个月

date -d last-month

date -d -1month

5、下个月

date -d next-month

date -d 1month

6、本月初

date -d 1`date +%B`

7、上个月初

date -d 1`date -d last-month +%B`

8、指定月份

date -d 1May

9、其他

date -d yesterday

date -d tomorrow

date --date='2 days ago'

date --date='3 months 1 day'

下星期一

date -d 'next monday'

上星期六

date -d 'last saturday'

date -d last-saturday +%Y-%m-%d

10、+1-1

date '+%B %d'英文名

date +%Y%m%d --date="+1 day" //显示后一天的日期

date +%Y%m%d --date="-1 day" //显示前一天的日期

date +%Y%m%d --date="-1 month" //显示上一月的日期

date +%Y%m%d --date="+1 month" //显示下一月的日期

date +%Y%m%d --date="-1 year" //显示前一年的日期

date +%Y%m%d --date="+1 year" //显示下一年的日期

11、时间戳

[root@host001 ~]#date -d "@1"

1970年 01月 01日 星期四 08:00:01 CST

[root@host001 ~]# date +%s

1382323658

[root@host001 ~]# date -d @1382323658

2013年 10月 21日 星期一 10:47:38 CST

12、获取到18点的时间差

#!/bin/sh

today=`date +%Y%m%d`

d18=`date -d "$today 18:00:00" +%s`

now1=`date -d now +%s`

echo $(($d18-$now1))

或者

#!/bin/sh

#d18=`date -d "now 18:00:00" +%s`

#d18=`date -d "18:00" +%s`

d18=`date -d "18" +%s`

now1=`date -d now +%s`

echo $(($d18-$now1))

相关日志

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值