[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [WIP PATCH 14/16] WIP: tools/xl: Enhance "list" command
Add several features to specify output. Allow omitting potentially unneeded lines and add argument for exact line format. Signed-off-by: Elliott Mitchell <ehem+xen@xxxxxxx> --- tools/xl/xl_cmdtable.c | 2 ++ tools/xl/xl_list.c | 16 +++++++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c index f44c65a3f8..91c2026bc8 100644 --- a/tools/xl/xl_cmdtable.c +++ b/tools/xl/xl_cmdtable.c @@ -53,6 +53,7 @@ struct cmd_spec cmd_table[] = { &main_list, 0, 0, "List information about all/some domains", "[options] [Domain]\n", + "-0, --no-domain0 Omit information for Domain 0\n" "-F, --format Specify output format string\n" " Similar to printf(3) formatting, conversion characters are:\n" " %A NODE Affinity\n" @@ -67,6 +68,7 @@ struct cmd_spec cmd_table[] = { " %t Time(s)\n" " %u UUID\n" " %v vCPUs\n" + "-H, --no-header Omit table header\n" "-Z, --context Prints out security context\n" "-c, --cpupool Prints the cpupool the domain is in\n" "-l, --long Output all VM details\n" diff --git a/tools/xl/xl_list.c b/tools/xl/xl_list.c index 3ed6da8feb..49ff2acaad 100644 --- a/tools/xl/xl_list.c +++ b/tools/xl/xl_list.c @@ -397,6 +397,8 @@ int main_list(int argc, char **argv) bool context = false; bool cpupool = false; bool details = false; + bool dom0 = true; + bool header = true; const char *formatstr = NULL; bool numa = false; bool verbose = false; @@ -405,6 +407,8 @@ int main_list(int argc, char **argv) {"cpupool", 0, 0, 'c'}, {"format", 0, 0, 'F'}, {"long", 0, 0, 'l'}, + {"no-domain0", 0, 0, '0'}, + {"no-header", 0, 0, 'H'}, {"numa", 0, 0, 'n'}, {"verbose", 0, 0, 'v'}, COMMON_LONG_OPTS @@ -414,10 +418,16 @@ int main_list(int argc, char **argv) libxl_dominfo *info, *info_free=0; int nb_domain, rc; - SWITCH_FOREACH_OPT(opt, "F:Zchlnv", opts, "list", 0) { + SWITCH_FOREACH_OPT(opt, "0F:HZchlnv", opts, "list", 0) { + case '0': + dom0 = false; + break; case 'F': formatstr = optarg; break; + case 'H': + header = false; + break; case 'Z': context = true; break; @@ -476,10 +486,10 @@ int main_list(int argc, char **argv) return EXIT_FAILURE; } - format(formats, formatstr, NULL); + if (header) format(formats, formatstr, NULL); while (nb_domain) { - format(formats, formatstr, info); + if (info->domid || dom0) format(formats, formatstr, info); ++info; --nb_domain; } -- -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | ehem+sigmsg@xxxxxxx PGP 87145445 | ) / \_CS\ | _____ -O #include <stddisclaimer.h> O- _____ | / _/ 8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |