12 小时格式的日期输出

12 小时格式的日期输出

我在脚本中使用 date 命令通过添加一些分钟来获取日期和时间。

date --date 'now + 60 minutes'
Mon Oct 31 09:45:46 IST 2022

目前我得到 24 小时格式的输出。如何获取 12 小时格式的信息?

答案1

您有两种选择来解决这个问题。

解决方案一:

根据man date

%r 区域设置的 12 小时时钟时间(例如,11:11:04 PM)

所以你应该使用类似的东西+%r,但是如果你只使用它,那么你将得到以下格式的输出:

09:54:32 PM # HH:MM:SS (AM|PM) format.

因此,如果您想获得相同的输出格式:Mon Oct 31 09:45:46 IST 2022您应该使用这个(我不确定是否存在使用该格式打印的更短方法):

date --date 'now + 60 minutes' '+%a %b %d %r %Z %Y'

解决方案2:

您可以将LC_TIME变量设置为en_US.UTF-8(实际上这是我当前对 LC_TIME 的设置,当我使用时,date我会得到 12 小时格式的输出)。你可以运行:

LC_TIME="en_US.UTF-8" date

或者

export LC_TIME="en_US.UTF-8"
date

相关内容