Linux date命令 crontab每个月最后一天


###使用date获取日期时间等

# 当前日期
openstack@ubuntu:~$ date
2019年 01月 15日 星期二 15:10:49 CST
# 明天
openstack@ubuntu:~$ date -d tomorrow
2019年 01月 16日 星期三 15:10:52 CST
# 明天,只显示当月的第几天
openstack@ubuntu:~$ date -d tomorrow +\%e
16
openstack@ubuntu:~$ date +\%e
15
# 分钟
openstack@ubuntu:~$ date +\%M
12
# 月份
openstack@ubuntu:~$ date +\%m
01
# 小时
openstack@ubuntu:~$ date +\%H
15

判断今天是不是本月的最后一天

# 今天是15号
openstack@ubuntu:~$ if [ `date -d tomorrow +\%e` -eq 1 ]; then
> echo "1111"
> fi
openstack@ubuntu:~$ if [ `date -d tomorrow +\%e` -eq 16 ]; then echo "1111"; fi
1111

如果用过crontab的话可以看一下,在本月的最后一天执行

# 在每个月最后一天的8点输出hello
0 8 28-31 * * [ `date -d tomorrow +\%e` -eq 1 ] && echo "hello"
# 不使用date的另一种形式
0 8 L * * [ `date -d tomorrow +\%e` -eq 1 ] && echo "hello"

猜你喜欢

转载自www.cnblogs.com/wangjiale1024/p/10272236.html