Linux日期命令示例
date用于命令显示或设置系统日期。它最常用于以不同格式打印日期和时间,并计算将来和过去的日期。
在本教程中,我们将介绍date命令的基础知识。
使用Linux date命令
date
命令的语法如下:
date [OPTION]... [+FORMAT]
要使用默认格式显示当前系统时间和日期,请调用不带任何选项的命令:
date
输出将包括星期几,月份,月份,时间,时区和年份:
Sat Jun 1 14:31:01 CEST 2019
日期格式选项
date
的输出可以使用一系列格式控制字符(带+
符号)进行格式化。格式控件以%
符号开头,并由其值代替。
date +"Year: %Y, Month: %m, Day: %d"
%Y
字符将与年被替换,%m
以月和%d
与月份的一天:
Year: 2019, Month: 06, Day: 02
这是另一个示例:
date "+DATE: %D%nTIME: %T"
DATE: 06/02/19TIME: 01:47:04
以下是一些最常见的格式字符的一小部分:
%a
-语言环境的简短工作日名称(例如星期一)%A
-语言环境的完整工作日缩写(例如星期一)%b
-语言环境的简称(例如Jan)%B
-语言环境的长月份缩写名称(例如1月)%d
-一个月中的某天(例如01)%H
-小时(00..23)%I
-小时(01..12)%j
-一年中的某天(001..366)%m
-月(01..12)%M
-分钟(00..59)%S
-秒(00..60)%u
-星期几(1..7)%Y
-全年(例如2019年)
要获取所有格式选项的完整列表,请在您的终端上运行date --help
或运行man date
。
日期字串
-d
选项允许您在特定日期进行操作。您可以将日期指定为易于理解的日期字符串,如下所示:
date -d "2010-02-07 12:10:53"
Sun Feb 7 12:10:53 CET 2010
使用自定义格式:
date -d '16 Dec 1974' +'%A, %d %B %Y'
Monday, 16 December 1974
日期字符串还可以接受诸如“明天”,“星期五”,“上周五”,“下周五”,“下个月”,“下周”等值。
date -d "last week"
Sat May 25 14:31:42 CEST 2019
您还可以使用日期字符串选项显示不同时区的本地时间。例如,要显示下周一星期一在澳大利亚东海岸的当地时间6:30,您可以输入:
date -d 'TZ="Australia/Sydney" 06:30 next Monday'
Sun Jun 2 22:30:00 CEST 2019
覆盖时区
date
命令使用默认系统时区。要使用其他时区,请将环境变量 TZ
设置为所需时区。
例如,要显示澳大利亚墨尔本时间,请输入:
TZ='Australia/Melbourne' date
Sat Jun 1 22:35:10 AEST 2019
要列出所有可用时区,您可以列出/usr/share/zoneinfo
目录中的文件或使用timedatectl list-timezones
命令。
时代转换器
date
命令可用作纪元转换器。纪元(Unix时间戳)是自1970年1月1日UTC时间00:00:00起经过的秒数。
要打印从纪元到当前日期的秒数,请使用%s
格式控件:
date +%s
1559393792
要将纪元以来的秒转换为日期,请将秒设置为日期字符串,前缀为@
:
date -d @1234567890
Sat Feb 14 00:31:30 CET 2009
将日期与其他命令一起使用
date
命令最常用于创建包含当前时间和日期的文件名。
以下命令将以以下格式创建Mysql备份文件database_name-20190601.sql
mysqldump database_name > database_name-$(date +%Y%m%d).sql
您也可以date
在Shell脚本中使用该命令。在下面的例子中,我们分配的输出date
到date_now
变量:
date_now=$(date "+%F-%H-%M-%S")echo $date_now
2019-06-01-15-02-27
显示文件的最后修改时间
date
带有-r
选项的命令显示文件的最后修改时间。例如:
date -r /etc/hosts
Tue Jul 24 11:11:48 CEST 2018
如果要修改文件时间戳,请使用touch
命令。
设置系统时间和日期
通常不建议使用date
命令手动设置系统时间和日期,因为在大多数Linux发行版中,系统时钟使用ntp
或systemd-timesyncd
服务进行同步。
但是,如果要手动设置系统时钟,则可以使用该--set=
选项。例如,如果要将日期和时间设置为2019年6月1日下午5:30,则应输入:
date --set="20190601 17:30"
结论
到目前为止,您应该对如何使用Linux date命令有一个很好的了解。
如果您有任何问题或反馈,请随时发表评论。
以上是 Linux日期命令示例 的全部内容, 来源链接: utcz.com/z/507016.html