如何在linux终端中显示日期和时间(并在bash脚本中使用)

date命令位于bashshell中,这是大多数Linux发行版甚至macOS中的默认shell。本教程向您展示了如何在命令行上掌握日期,以及如何在shell脚本中使用它来完成不仅仅是打印时间的工作。...

date命令位于bashshell中,这是大多数Linux发行版甚至macOS中的默认shell。本教程向您展示了如何在命令行上掌握日期,以及如何在shell脚本中使用它来完成不仅仅是打印时间的工作。

运行date命令查看此信息。它为您的时区打印当前日期和时间:

date

如何在linux终端中显示日期和时间(并在bash脚本中使用)

默认格式看起来有点傻。为什么一年不在一个月和一天之后打印,而不是在时区后面的末尾标记?不用担心:如果它控制着你想要的输出格式,date会毫不含糊地交付它。到目前为止,您可以传递40多个选项来指示它精确地格式化输出。

要使用任何选项,请键入日期、空格、加号+,以及包含前导百分号的选项。%c(区域设置格式中的数据和时间)选项导致日期和时间以与您的区域设置相关联的规范化格式打印。您的区域设置由安装操作系统时提供的地理和文化信息设置。区域设置控制诸如货币符号、纸张大小、时区和其他文化规范之类的内容。

date +%c

如何在linux终端中显示日期和时间(并在bash脚本中使用)

这一年在产出中的地位似乎更为自然。

您可以一次传递多个日期选项。一系列选项称为格式字符串。要查看日期(%A)、月份(%d)和月份名称(%B),请使用以下命令:

date +%A%d%B

如何在linux终端中显示日期和时间(并在bash脚本中使用)

这很管用,但很难看。没问题,只要将整个格式字符串用引号括起来,就可以包含空格。注意+在引号外。

date +"%A %d %B"

如何在linux终端中显示日期和时间(并在bash脚本中使用)

可以向格式字符串中添加文本,如下所示:

date +"Today is: %A %d %B"

如何在linux终端中显示日期和时间(并在bash脚本中使用)

在日期手册页上下滚动寻找你想要的选项很快就会变得令人厌烦。我们已经将这些选项分组讨论,以帮助您更轻松地找到绕过它们的方法。

显示日期和时间的选项

  • %c:以您所在地区的格式打印日期和时间,包括时区。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示日期的选项

  • %D:以mm/dd/yy格式打印日期。
  • %F:以yyyy-mm-dd格式打印日期。
  • %x:以您所在区域的格式打印日期。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示日期的选项

  • %a:打印当天的名称,缩写为周一、周二、周三等。
  • %答:打印当天的全名,星期一、星期二、星期三等。
  • %u:打印一周中某一天的数字,其中星期一=1,星期二=2,星期三=3,依此类推。
  • %w:打印一周中某一天的数字,其中星期日=0,星期一=1,星期二=2,依此类推。
  • %d:打印一个月中的某一天,如果需要的话,还带有前导零(01,02…09)。
  • %e:打印一个月中的某一天,如果需要,可以用前导空格('1'、'2'…'9')。注意撇号不打印。
  • %j:打印一年中的某一天,如果需要的话,最多可以有两个前导零。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示周的选项

  • %U:打印一年中的周数,将星期日视为一周的第一天。例如,一年中的第三周、第二十周等。
  • %V:打印一年中的ISO周数,将星期一视为一周的第一天。
  • %W:一年中的第几周,星期一是一周的第一天。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示月份的选项

  • %b或%h:打印月份名称,缩写为一月、二月、三月等。
  • %B:打印月份的全称,一月、二月、三月等。
  • %m:打印月份的数字,如果需要的话,用前导零01,02,03…12。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示年份的选项

  • %C:印刷没有年份的世纪。2019年,它将印刷20张。
  • %y:把年份打印成两位数。2019年,它将印刷19张。
  • %Y:把年份打印成四位数。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示时间的选项

  • %T:将时间打印为HH:MM:SS。
  • %R:使用24小时制,将小时和分钟打印为HH:MM,不带秒。
  • %r:使用12小时时钟和am或pm指示器,根据您的区域设置打印时间。
  • %X:使用24小时时钟,根据您的区域设置打印时间。据称。请注意,在测试期间,此选项的行为与%r完全相同,如下所示。在一台配置为英国地区并设置为GMT的Linux机器上,它按预期使用没有AM或PM指示器的24小时时钟打印时间。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示小时的选项

  • %H:打印00,01,02…23小时。
  • %I:使用12小时时钟00、01、02…12打印小时,如果需要,则使用前导零。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示分钟的选项

  • %M:打印分钟,01,02,03…59,如果需要的话,用前导零。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示秒数的选项

  • %s:打印自1970-01-01 00:00:00(Unix纪元的开始)以来的秒数。
  • %S:打印秒,01,02,03…59,如果需要,用前导零。
  • %护士:打印纳秒。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

显示时区信息的选项

  • %z:打印时区和UTC之间的时差。
  • %:z:打印时区和UTC之间的时差,小时和分钟之间带有:。注意:在%符号和z之间。
  • %:z:打印时区和UTC之间的时差,a:表示小时、分钟和秒。注意:在%符号和z之间有::。
  • %Z:打印按字母顺序排列的时区名称。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

与格式相关的选项

  • %p:用大写字母打印AM或PM指示器。
  • %P:以小写形式打印am或pm指示器。请注意这两个选项的奇怪之处。小写的p表示大写输出,大写的p表示小写输出。
  • %t:打印一个标签。
  • %护士:打印一条新的线。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

用于修改其他选项的选项

可以在其他选项的%和选项字母之间**这些修饰符,以修改其显示。例如,%-S将删除一位数秒值的前导零。

  • –:单个连字符可防止在单个数字值上进行零填充。
  • _:单个下划线为单个数字值添加前导空格。
  • 0:为单个数字值提供前导零。
  • ^:如果可能,使用大写(并非所有选项都使用此修饰符)。
  • #:如果可能,对选项使用与默认大小写相反的大小写(并非所有选项都使用此修饰符)。

如何在linux终端中显示日期和时间(并在bash脚本中使用)

还有两个妙招

要获取文件的最后修改时间,请使用-r(reference)选项。请注意,它使用-(连字符)而不是%符号,并且不需要+符号。在主文件夹中尝试此命令:

date -r .bashrc

如何在linux终端中显示日期和时间(并在bash脚本中使用)

TZ设置允许您在单个命令执行期间更改时区。

TZ=GMT date +%c

在脚本中使用日期

启用bashshell脚本来打印时间和日期很简单。创建一个包含以下内容的文本文件,并将其另存为广东省.

#!/bin/bash TODAY=$(date +"Today is %A, %d of %B") TIMENOW=$(date +"The local time is %r") TIME_UK=$(TZ=BST date +"The time in the UK is %r") echo $TODAY echo $TIMENOW echo $TIME_UK

键入以下命令以设置执行权限并使脚本可执行。

chmod +x gd.sh

使用以下命令运行脚本:

./gd.sh

如何在linux终端中显示日期和时间(并在bash脚本中使用)

我们可以使用date命令来提供时间戳。显示的脚本将创建一个以时间戳为名称的目录。然后它会将当前文件夹中的所有文本文件复制到其中。通过定期运行这个脚本,我们可以拍摄文本文件的快照。随着时间的推移,我们将建立一系列文件夹,其中包含不同版本的文本文件。

请注意,这不是一个健壮的备份系统,它只是为了说明目的。

创建一个包含以下内容的文本文件,并将其另存为快照.sh.

#!/bin/bash # obtain the date and time date_stamp=$(date +"%F-%H-%M-%S") # make a directory with that name mkdir "$date_stamp" # copy the files from the current folder into it cp *.txt "$date_stamp" # all done, report back and exit echo "Text files copied to directory: "$date_stamp

键入以下命令以设置执行权限并使脚本可执行。

chmod +x snapshot.sh

使用以下命令运行脚本:

./snapshot.sh

如何在linux终端中显示日期和时间(并在bash脚本中使用)

您将看到已经创建了一个目录。它的名称是执行脚本的日期和时间。在这个目录中有文本文件的副本。

只要有一点思考和创造力,即使是简陋的date命令也可以被有效地使用。

  • 发表于 2021-04-03 16:52
  • 阅读 ( 516 )
  • 分类:互联网

你可能感兴趣的文章

什么是shell脚本,为什么要使用它

... 如何执行shell脚本?很简单。只需将脚本路径作为参数传递给shell: ...

  • 发布于 2021-03-13 04:53
  • 阅读 ( 246 )

顶级网站和书籍,让您成为linux命令行英雄

...bash是什么、不同的模式(交互式和非交互式)以及它是如何产生的基础知识开始,这个站点提供了一个全面的背景知识来帮助您理解命令行的机制。 ...

  • 发布于 2021-03-14 07:04
  • 阅读 ( 243 )

如何定制mac终端并使其更有用

...个新手,现在坚持默认的bashshell是可以的。但你应该知道如何在需要的时候切换它们。 ...

  • 发布于 2021-03-21 20:13
  • 阅读 ( 269 )

在linux中,“bash”是什么意思?

...在这篇短文中,我们将探讨Bash是什么,它做什么,以及如何开始使用它。 ...

  • 发布于 2021-03-28 13:14
  • 阅读 ( 449 )

关于linux中bash for loops的所有知识

... 第一行告诉运行这个程序的人如何运行它(即使用bash解释器)。第二个命令与您在命令行中输入的任何其他命令一样。将该文件另存为hello_世界.sh,然后: ...

  • 发布于 2021-03-29 06:22
  • 阅读 ( 306 )

哪个linux shell最好?比较了5种常见的贝壳

...你的计算机需要一个翻译层。这介于你告诉它做什么和它如何理解之间。 ...

  • 发布于 2021-03-30 18:45
  • 阅读 ( 366 )

如何在linux上使用seq命令

Linux seq命令可以在眨眼之间生成数字列表。但是如何将这个功能付诸实际使用呢?我们将向您展示seq如何为您带来便利。 seq命令 乍一看,Linux seq命令似乎有些奇怪。它可以让你快速生成数字序列,就这样!不过,这里的关键...

  • 发布于 2021-04-01 11:46
  • 阅读 ( 155 )

如何使用chsh在linux上更改默认shell

Bash不是唯一的Linux shell。很容易尝试其他的shell,比如非常流行的Zsh。找到一个您喜欢的shell后,使用chsh命令将其设置为默认shell。我们会教你怎么做。 为什么贝壳很重要 shell位于您和操作系统之间。它在终端窗口内提供环境...

  • 发布于 2021-04-02 06:04
  • 阅读 ( 334 )

如何在linux上的bash中设置环境变量

Linux上有多种类型的环境变量。了解如何查看它们,为本地和远程登录创建它们,并使它们在重新启动后仍然有效。 环境变量的工作原理 启动终端窗口及其内部的shell时,会引用一组变量,以确保shell配置正确。这些变量还确...

  • 发布于 2021-04-02 06:44
  • 阅读 ( 218 )

如何在linux上使用history命令

...复您过去运行的命令。一旦您了解了Linux history命令以及如何使用它,它就可以显著地提高您的生产效率。 操纵历史 正如乔治桑塔亚纳(georgestantayana)的一句名言:“那些记不住过去的人注定要重蹈覆辙。”不幸的是,在Linux...

  • 发布于 2021-04-02 18:17
  • 阅读 ( 200 )
胡萝卜sy
胡萝卜sy

0 篇文章

相关推荐