在shell中怎么获取当前日期和时间

在shell中怎么获取当前日期和时间,第1张

获得当天的日期:[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命令 。 需要注意的是乘法符号 * 需要写成 \* ,不然无法识别为乘法符号。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8995273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存