Hi,
We found some discrepancy with uptime utility of coreutils package.
In my system using coreutils package with version 8.26, uptime output prints
PM/AM for 24 hour time format.
Logs:
------------------------------------------------------------------------------------
# uptime
17:19pm up 6 days 10:02, 1 user, load average: 0.18, 0.14, 0.10
# uptime --version
uptime (GNU coreutils) 8.26
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <
http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Joseph Arceneaux, David MacKenzie, and Kaveh Ghazi
------------------------------------------------------------------------------------
The time is in 24 hours format and PM is not expected to be printed.
We can see latest patch for uptime utility, use of fprintftime to print the time
(
http://lists.gnu.org/archive/html/bug-coreutils/2008-08/msg00035.html).
------------------------------------------------------------------------------------
diff --git a/src/uptime.c b/src/uptime.c
index 9e3384f..5bdc230 100644
--- a/src/uptime.c
+++ b/src/uptime.c
@@ -36,6 +36,7 @@
#include "long-options.h"
#include "quote.h"
#include "readutmp.h"
+#include "fprintftime.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "uptime"
@@ -126,12 +127,10 @@ print_uptime (size_t n, const STRUCT_UTMP *this)
uphours = (uptime - (updays * 86400)) / 3600;
upmins = (uptime - (updays * 86400) - (uphours * 3600)) / 60;
tmn = localtime (&time_now);
+ /* procps' version of uptime also prints the seconds field, but
+ previous versions of coreutils don't. */
if (tmn)
- printf (_(" %2d:%02d%s up "),
- ((tmn->tm_hour % 12) == 0 ? 12 : tmn->tm_hour % 12),
- /* FIXME: use strftime, not am, pm. Uli reports that
- the german translation is meaningless. */
- tmn->tm_min, (tmn->tm_hour < 12 ? _("am") : _("pm")));
+ fprintftime (stdout, _(" %H:%M%P up "), tmn, 0, 0);
else
printf (_(" ??:???? up "));
if (uptime == (time_t) -1)
-----------------------------------------------------------------------------------
Can you please verify whether PM/AM should be avoided from uptime print.
Please provide your inputs for same.