获得当天的日期:[root@master ~]# date +%Y-%m-%d
有时候需要使用今天之前或者往后的日期,这时可以使用date的 -d参数。
获取明天的日期:date -d next-day +%Y%m%d
获取昨天的日期:date -d last-day +%Y%m%d
获取上个月的年和月:date -d last-month +%Y%m
获取下个月的年和月:date -d next-month +%Y%m
获取明年的年份:date -d next-year +%Y
扩展资料
时间域参数:
时间域参数用于格式化输出日期,相关时间域参数如下:
% H 小时(00…23)
% I 小时(01…12)
% k 小时(0…23)
% l 小时(1…12)
% M 分(00…59)
% p 显示出AM或PM
% r 时间(hh:mm:ss AM或PM),12小时
% s 从1970年1月1日00:00:00到目前经历的秒数
% S 秒(00…59)
在linux Shell中并没有毫秒级的时间单位,只有秒和纳秒。所以在shell中可以获取秒级时间戳,但是不能获取毫秒级时间戳。 有时候确实需要毫秒级时间戳,于是使用秒和纳秒的时间戳来组合一下。通常我们看到的都是如下写法: 这个方法你快速地反复去执行,大概五六次就会出现一次报错 value too great for base 。 date '+%N' 获取纳秒时获取的是一个字符串,而不是数字,且为了保证九位数,前面会补0,例如 073526864 。遇到首字母为0的字符串,shell正常的除法不能自动将其转换为数字(是的,虽然你看不到有数据类型,但是他是分数字和字符串类型的,并且使用的时候一般都隐含了类型转换,lua也有这个问题,被坑过无数次)。 使用 expr命令 。 需要注意的是乘法符号 * 需要写成 \* ,不然无法识别为乘法符号。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)