Я работаю над программой, которая требует ввода времени в 24-часовом формате для оператора if...else. Она берет эти данные из команды оболочки, а именно lpstat. Теперь мне было бы гораздо удобнее взять эти данные в 24-часовом формате, чем брать 12-часовой формат и преобразовывать его в 24-часовой формат с помощью RegEx.
Для справки, мой текущий вывод 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