date 命令

时间:2019-04-29 03:17:38  来源:igfitidea点击:

日期命令示例

date命令用于显示或设置系统日期和时间。
语法: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

显示系统的日期和时间。

ls001a:~ # date
Mon Jun  3 09:33:22 BST 2013

从传递的字符串显示日期

ls001a:~ # date --date="12/25/2013"
Wed Dec 25 00:00:00 GMT 2013

ls001a:~ # date --date="Dec 25 2013"
Wed Dec 25 00:00:00 GMT 2013

显示过去的日期

john@ls001a:~/dates> date --date="yesterday"
Sun Jun  2 10:25:34 BST 2013

john@ls001a:~/dates> date --date="2 day ago"
Sat Jun  1 10:26:26 BST 2013

john@ls001a:~/dates> date --date="5 day ago"
Wed May 29 10:26:40 BST 2013

john@ls001a:~/dates> date --date="1 month ago"
Fri May  3 10:27:01 BST 2013

john@ls001a:~/dates> date --date="1 year ago"
Sun Jun  3 10:27:09 BST 2012

显示文件中的日期

为了演示与文件一起使用的date命令,我创建了一个名为dates.txt的文件。该文件的内容如下:

john@ls001a:~/dates> cat dates.txt
25 Dec 2013
1 Dec 2013
July 4 2014
1 Aug 2015

现在使用--file选项,我们可以读取文件中的条目并使用date命令对其进行处理:

john@ls001a:~/dates> date --file=dates.txt
Wed Dec 25 00:00:00 GMT 2013
Sun Dec  1 00:00:00 GMT 2013
Fri Jul  4 00:00:00 BST 2014
Sat Aug  1 00:00:00 BST 2015

显示文件的最后修改时间

date命令还可以用于显示文件修改时间:

john@ls001a:~/dates> date --reference dates.txt
Mon Jun  3 10:15:49 BST 2013

显示UTC时间

john@ls001a:~/dates> date --utc
Mon Jun  3 09:22:35 UTC 2013

设定日期和时间

date命令可用于在系统上配置日期和时间。在下面的示例中,我们使用不带参数的date命令确认当前日期和时间。接下来,我们使用-s选项执行date命令,该选项允许我们传递日期和时间设置:

[root@rhel01 root]# date
Mon Jun  3 10:50:24 BST 2013

[root@rhel01 root]# date -s "Tue June 5 19:00 BST 2014"
Thu Jun  5 19:00:00 BST 2014

[root@rhel01 root]# date -s "Mon Jun 3 10:53 BST 2013"
Mon Jun  3 10:53:00 BST 2013

[root@rhel01 root]# date
Mon Jun  3 10:53:03 BST 2013

其他日期格式

用法:date [OPTION]... [+FORMAT]
或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

不带任何格式的日期命令

ls001a:~ # date
Mon Jun  3 11:17:01 BST 2013

使用日期命令显示星期数

ls001a:~ # date +%W
22

用日期命令显示月份号

ls001a:~ # date +%m
06

使用日期命令显示年份中的天数

ls001a:~ # date +%j
154

使用日期命令显示星期几

ls001a:~ # date +%A
Monday

使用日期显示月份命令

ls001a:~ # date +%B
June

在脚本或报告中使用日期命令

在报表中添加一些日期信息通常很有用。这可以通过将date命令与上述FORMAT选项一起使用来轻松实现:

echo "Today is "`date +%A` "This report was generated at " `date +%T`
Today is Monday This report was generated at  21:10:42