type
status
date
slug
summary
tags
category
icon
password
Mac下的date命令是BSD(Berkeley Software Distribution)系的,Linux下date命令是GNU(GNU's Not Unix)系的,二者用法有一些区别。linux下的date命令用法见[[Linux中date命令用法]]。
BSD并不特指任何一个BSD衍生版本,而是类UNIX操作系统中的一个分支的总称。
Mac OS X和iOS实际上基于Darwin,Darwin是BSD其中一个分支。
共同点
基本的时间格式的缩写是相同的,规则如下:
%Y
四位数形式的年份,如2018
%y
两位数形式的年份,如18
%m
表示前导0的月份,如01,12
%d
表示前导0的日期,如02,28
%h
三位的英文月份
%H
表示前导0的24小时(0~23)
%M
表示前导为0的分钟数(0~60)
%S
表示前导为0的描述秒数(0~60)
%s
表示距离格林尼治时间(1970年1月1日0点)的秒数
不同点
获取前一天和获取后一天的写法不同:
Mac:通过
-v
参数,-v-1d
代表前一天,-v-1y
代表上一年Linux:通过
--date
参数实现,--date='-1 day'
代表前一天,--date='-1 year'
代表上一年mac date命令用法详解
用法
参数解析
j
:使用-j才能使用-f
n
:默认情况下,如果定时进程正在运行,date命令会在本地组的所有机器设置时间。n
可以禁止这种行为,表示只设置当前计算机。
u
:显示或者设置日期为UTC(世界协调时钟)时间
d
:设置内核的时区,一般不使用
r
:秒转换时间
t
:(time zone)时区设置(GMT时区)
v
:根据参数调整时间- 不使用+|-,更改对应的时间
- 使用+:增加对应的时间
- 使用-:减少对应的时间
f
:根据格式调整时间
+
:+号引导的一些格式,和正常的Linux格式一致
使用示例
- 查看当前时间戳(即转换成秒):
- 当前时间转换指定格式
- 时间戳转时间