From: Charles Duffy <chadu...@cisco.com> --- src/cgtop/cgtop.c | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-)
diff --git a/src/cgtop/cgtop.c b/src/cgtop/cgtop.c index a390cf3..0dbac7f 100644 --- a/src/cgtop/cgtop.c +++ b/src/cgtop/cgtop.c @@ -62,6 +62,7 @@ typedef struct Group { static unsigned arg_depth = 3; static unsigned arg_iterations = 0; static bool arg_batch = false; +static bool arg_raw = false; static usec_t arg_delay = 1*USEC_PER_SEC; static enum { @@ -533,15 +534,24 @@ static int display(Hashmap *a) { printf(" %*s", maxtcpu, format_timespan(buffer, sizeof(buffer), (nsec_t) (g->cpu_usage / NSEC_PER_USEC), 0)); if (g->memory_valid) - printf(" %8s", format_bytes(buffer, sizeof(buffer), g->memory)); + if(arg_raw) { + printf(" %8ld", g->memory); + } else { + printf(" %8s", format_bytes(buffer, sizeof(buffer), g->memory)); + } else fputs(" -", stdout); if (g->io_valid) { - printf(" %8s", - format_bytes(buffer, sizeof(buffer), g->io_input_bps)); - printf(" %8s", - format_bytes(buffer, sizeof(buffer), g->io_output_bps)); + if(arg_raw) { + printf(" %8ld", g->io_input_bps); + printf(" %8ld", g->io_output_bps); + } else { + printf(" %8s", + format_bytes(buffer, sizeof(buffer), g->io_input_bps)); + printf(" %8s", + format_bytes(buffer, sizeof(buffer), g->io_output_bps)); + } } else fputs(" - -", stdout); @@ -561,6 +571,7 @@ static void help(void) { " -c Order by CPU load\n" " -m Order by memory load\n" " -i Order by IO load\n" + " -r Provide raw (not human-readable) numbers\n" " --cpu[=TYPE] Show CPU usage as time or percentage (default)\n" " -d --delay=DELAY Delay between updates\n" " -n --iterations=N Run for N iterations before exiting\n" @@ -583,6 +594,7 @@ static int parse_argv(int argc, char *argv[]) { { "delay", required_argument, NULL, 'd' }, { "iterations", required_argument, NULL, 'n' }, { "batch", no_argument, NULL, 'b' }, + { "raw", no_argument, NULL, 'r' }, { "depth", required_argument, NULL, ARG_DEPTH }, { "cpu", optional_argument, NULL, ARG_CPU_TYPE}, {} @@ -594,7 +606,7 @@ static int parse_argv(int argc, char *argv[]) { assert(argc >= 1); assert(argv); - while ((c = getopt_long(argc, argv, "hptcmin:bd:", options, NULL)) >= 0) + while ((c = getopt_long(argc, argv, "hptcmin:brd:", options, NULL)) >= 0) switch (c) { @@ -649,6 +661,10 @@ static int parse_argv(int argc, char *argv[]) { arg_batch = true; break; + case 'r': + arg_raw = true; + break; + case 'p': arg_order = ORDER_PATH; break; -- 2.0.0 _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel