我一直对历史日期以及确定事件发生的实际星期几感兴趣。 《独立宣言》是在星期几签署的? 我是在星期几出生的? 1876 年 7 月 4 日是星期几? 我知道你可以使用搜索引擎来回答许多这些问题。 但是,您是否知道 Linux 命令行也可以提供这些答案?
1776 年 7 月 4 日是星期四。 1876 年 7 月 4 日是星期二。 我妈妈很快就要过生日了,我知道她出生于 11 月 6 日星期六。(我不能告诉你哪一年,因为她不想让别人知道她的年龄。)
Linux date 和 calendar 命令的功能远不止提供这些有趣的花絮。 以下是一些可以在命令行上发出的简单 cal 命令示例
显示当前日历月份:$ cal
November 2016 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
显示特定月份的日历:$ cal -m February
February 2016 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
显示带有儒略日的日历:$ cal -j
November 2016 Su Mo Tu We Th Fr Sa 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335
显示当前月份、上个月和下个月:$ cal -3
October November December Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 1 2 3 4 5 1 2 3 2 3 4 5 6 7 8 6 7 8 9 10 11 12 4 5 6 7 8 9 10 9 10 11 12 13 14 15 13 14 15 16 17 18 19 11 12 13 14 15 16 17 16 17 18 19 20 21 22 20 21 22 23 24 25 26 18 19 20 21 22 23 24 23 24 25 26 27 28 29 27 28 29 30 25 26 27 28 29 30 31 30 31 |
您可以使用 $ cal -y
显示全年,或使用 $ cal -jy
显示儒略日,从 1 月 1 日的 1 开始,到 12 月 31 日结束,如果是闰年则为 365 或 366。 您还可以使用相关的 ncal 命令来计算稍微复杂的日期。 例如,$ ncal -e
显示当年复活节的日期。
像大多数命令行工具一样,日历工具可以与管道或其他功能组合使用。 如果您想要整年的打印输出,然后将日历命令通过管道传输到文本文件,则只需运行 $ cal 2016 > YearlyCalendar.txt
。 文本文件可以在任何文本编辑器中打开并编辑或保存为 PDF 并共享。
Linux 中的 date 命令可以显示多种格式的日期,或设置计算机 Linux 操作系统上的日期。 date 命令可以与 shell 脚本结合使用,例如,轻松地将日期附加到您正在编辑的文件中。 除了日历日期外,还可以指定时间。 以下是一些示例。
您可以使用以下命令显示今天的日期:$ date
Wed Nov 2 21:20:22 EDT 2016
您还可以将一种日期格式转换为另一种日期格式。 例如,要转换为日期标准格式,请使用:$date --date="11/30/16"
Wed Nov 30 00:00:00 EST 2016
也可以指定时间:$ date --date="December 1 2017 12:00:00"
Fri Dec 1 12:00:00 EST 2017
您还可以指定日期格式。 例如,对于 YYYY-Mo-Day 格式,请使用 $ date +%F
,或者通过指定要显示的精确详细信息来提供更高的精度,例如 $ date +"%y-%m-%d"
。 您也可以指定时间格式:$ date +%H
以 24 小时格式显示当前小时,而 $ date +%I
将以 12 小时格式显示。
date 也有一些快捷方式,例如,$ date --date "next monday"
或 $ date --date "yesterday"
,这在脚本上下文中可能很有用。 使用日期在编写 Bash 脚本时特别有用,例如,$ echo "Today is $(date)"
将输出 Today is Tue Dec 6 2016 15:53:41 2016
。 或者通过附加日期轻松创建文件备份,例如,$ cp foo.txt "foo.txt.$(date +%F)"
以添加今天的日期。
要了解更多信息或查看 date 命令的更多示例,请查看 Gnu Coreutils 文档。
15 条评论