提交 8f5becf3 编写于 作者: C Chen Hanxiao 提交者: Michal Privoznik

virsh: allow both --uuid and --name at same time

#virsh list --uuid --name
49c765a0-25e7-40d0-964f-dac99724b32c   c7
918f1dd6-b19f-412b-ba17-d113bad89af8   f23
Signed-off-by: NChen Hanxiao <chenhanxiao@gmail.com>
上级 949c4337
...@@ -1844,12 +1844,8 @@ cmdList(vshControl *ctl, const vshCmd *cmd) ...@@ -1844,12 +1844,8 @@ cmdList(vshControl *ctl, const vshCmd *cmd)
FILTER("state-shutoff", VIR_CONNECT_LIST_DOMAINS_SHUTOFF); FILTER("state-shutoff", VIR_CONNECT_LIST_DOMAINS_SHUTOFF);
FILTER("state-other", VIR_CONNECT_LIST_DOMAINS_OTHER); FILTER("state-other", VIR_CONNECT_LIST_DOMAINS_OTHER);
if (optTable + optName + optUUID > 1) { VSH_EXCLUSIVE_OPTIONS("table", "name");
vshError(ctl, "%s", VSH_EXCLUSIVE_OPTIONS("table", "uuid");
_("Only one argument from --table, --name and --uuid "
"may be specified."));
return false;
}
if (!optUUID && !optName) if (!optUUID && !optName)
optTable = true; optTable = true;
...@@ -1907,6 +1903,12 @@ cmdList(vshControl *ctl, const vshCmd *cmd) ...@@ -1907,6 +1903,12 @@ cmdList(vshControl *ctl, const vshCmd *cmd)
state == -2 ? _("saved") state == -2 ? _("saved")
: virshDomainStateToString(state)); : virshDomainStateToString(state));
} }
} else if (optUUID && optName) {
if (virDomainGetUUIDString(dom, uuid) < 0) {
vshError(ctl, "%s", _("Failed to get domain's UUID"));
goto cleanup;
}
vshPrint(ctl, "%-36s %-30s\n", uuid, virDomainGetName(dom));
} else if (optUUID) { } else if (optUUID) {
if (virDomainGetUUIDString(dom, uuid) < 0) { if (virDomainGetUUIDString(dom, uuid) < 0) {
vshError(ctl, "%s", _("Failed to get domain's UUID")); vshError(ctl, "%s", _("Failed to get domain's UUID"));
......
...@@ -524,8 +524,14 @@ Note that this flag does not filter the list of domains. ...@@ -524,8 +524,14 @@ Note that this flag does not filter the list of domains.
If I<--name> is specified, domain names are printed instead of the table If I<--name> is specified, domain names are printed instead of the table
formatted one per line. If I<--uuid> is specified domain's UUID's are printed formatted one per line. If I<--uuid> is specified domain's UUID's are printed
instead of names. Flag I<--table> specifies that the legacy table-formatted instead of names. Flag I<--table> specifies that the legacy table-formatted
output should be used. This is the default. All of these are mutually output should be used. This is the default.
exclusive.
If both I<--name> and I<--uuid> are specified, domain UUID's and names
are printed side by side without any header. Flag I<--table> specifies
that the legacy table-formatted output should be used. This is the
default if neither I<--name> nor I<--uuid> are specified. Options
I<--uuid> and I<--name> are mutually exclusive if option I<--table> is
specified.
If I<--title> is specified, then the short domain description (title) is If I<--title> is specified, then the short domain description (title) is
printed in an extra column. This flag is usable only with the default printed in an extra column. This flag is usable only with the default
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册