]> granicus.if.org Git - sysstat/commitdiff
RFE #112: sar: Add --human option
authorSebastien GODARD <sysstat@users.noreply.github.com>
Thu, 17 Nov 2016 09:54:33 +0000 (10:54 +0100)
committerSebastien GODARD <sysstat@users.noreply.github.com>
Thu, 17 Nov 2016 09:54:33 +0000 (10:54 +0100)
This option will enable the user to display values (sizes) in human
readable format (e.g. 12k, 1.23M, 2.84G, etc.)

Signed-off-by: Sebastien GODARD <sysstat@users.noreply.github.com>
sa.h
sar.c

diff --git a/sa.h b/sa.h
index d542869e343e23f990966f0322b423e4d15dae23..58bb8dfd5225ff308bd1a12f08a0794d5e3c7346 100644 (file)
--- a/sa.h
+++ b/sa.h
 #define S_F_SVG_AUTOSCALE      0x00020000
 #define S_F_SVG_ONE_DAY                0x00040000
 #define S_F_SVG_SHOW_IDLE      0x00080000
+#define S_F_UNIT               0x00100000
 
 #define WANT_SINCE_BOOT(m)             (((m) & S_F_SINCE_BOOT)   == S_F_SINCE_BOOT)
 #define WANT_SA_ROTAT(m)               (((m) & S_F_SA_ROTAT)     == S_F_SA_ROTAT)
 #define AUTOSCALE_ON(m)                        (((m) & S_F_SVG_AUTOSCALE) == S_F_SVG_AUTOSCALE)
 #define DISPLAY_ONE_DAY(m)             (((m) & S_F_SVG_ONE_DAY)   == S_F_SVG_ONE_DAY)
 #define DISPLAY_IDLE(m)                        (((m) & S_F_SVG_SHOW_IDLE) == S_F_SVG_SHOW_IDLE)
+#define DISPLAY_UNIT(m)                        (((m) & S_F_UNIT) == S_F_UNIT)
 
 #define AO_F_NULL              0x00000000
 
diff --git a/sar.c b/sar.c
index 978460f3ff777c9d33e04944b28b6eb23fa3ca85..d1d7d309f31d7291ddd0a3daec3b19e551d6bb05 100644 (file)
--- a/sar.c
+++ b/sar.c
@@ -111,7 +111,7 @@ void usage(char *progname)
        fprintf(stderr, _("Options are:\n"
                          "[ -A ] [ -B ] [ -b ] [ -C ] [ -D ] [ -d ] [ -F [ MOUNT ] ] [ -H ] [ -h ]\n"
                          "[ -p ] [ -q ] [ -R ] [ -r [ ALL ] ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -V ]\n"
-                         "[ -v ] [ -W ] [ -w ] [ -y ] [ --sadc ]\n"
+                         "[ -v ] [ -W ] [ -w ] [ -y ] [ --human ] [ --sadc ]\n"
                          "[ -I { <int> [,...] | SUM | ALL | XALL } ] [ -P { <cpu> [,...] | ALL } ]\n"
                          "[ -m { <keyword> [,...] | ALL } ] [ -n { <keyword> [,...] | ALL } ]\n"
                          "[ -j { ID | LABEL | PATH | UUID | ... } ]\n"
@@ -1170,6 +1170,12 @@ int main(int argc, char **argv)
                        which_sadc();
                }
 
+               else if (!strcmp(argv[opt], "--human")) {
+                       /* Display sizes in a human readable format */
+                       flags |= S_F_UNIT;
+                       opt++;
+               }
+
                else if (!strcmp(argv[opt], "-I")) {
                        if (argv[++opt]) {
                                /* Parse -I option */