我正在开发一个程序,该程序要求在 if...else 语句中输入 24 小时格式的时间。它从 shell 命令(特别是 lpstat)获取此输入。现在,对我来说,以 24 小时格式获取该输入要方便得多,而不是获取 12 小时输入并使用 RegEx 将其转换为 24 小时输入。
作为参考,我当前的 lpstat 输出看起来有点像这样:
Deskjet_1050_J410-25 nilanjan 4096 Saturday 29 August 2020 04:56:35 PM
Deskjet_1050_J410-26 nilanjan 4096 Saturday 29 August 2020 06:47:14 PM
Deskjet_1050_J410-27 nilanjan 4096 Saturday 29 August 2020 06:58:34 PM
在此,我需要时间部分采用 24 小时制。
请告诉我我该怎么做才能让时间输出lpstat
采用 24 小时制格式。
答案1
这应该可以通过LC_TIME
适当设置区域变量来实现,例如
$ lpstat -a
CUPS-BRF-Printer accepting requests since Thu 05 Apr 2018 05:36:42 PM EDT
DeskJet-3630 accepting requests since Thu 31 Aug 2017 03:59:12 AM EDT
但LC_TIME=C
$ LC_TIME=C lpstat -a
CUPS-BRF-Printer accepting requests since Thu Apr 5 17:36:42 2018
DeskJet-3630 accepting requests since Thu Aug 31 03:59:12 2017