如何將指令的時間輸出改為 24 小時格式?

如何將指令的時間輸出改為 24 小時格式?

我正在開發一個程序,該程序需要以 24 小時格式輸入時間以用於 if...else 語句。它從 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

相關內容