On Tue, Oct 20, 2009 at 11:30:12PM -0500, Charles Duffy wrote: > Daniel Berteaud wrote: >> If you need to get the mac address from bash, you can use this: >> >> virsh dumpxml myguest | grep 'mac address' | cut -d\' -f2 >> >> You'll get one mac address per line (one line per NIC on the guest) > > An alternate approach which doesn't depend on the specific manner in > which the XML is pretty-printed follows: > > virsh dumpxml myguest \ > | xmlstarlet sel -t \ > -m "/domain/devices/interfa...@type='network']/mac" \ > -v '@address' \ > -n > > This does add an external dependency (see http://xmlstar.sf.net/), but I > find XMLStarlet useful in conjunction with libvirt in other cases -- for > instance, for programatically adding or modifying devices within the > domain XML.
Agreed, its cleaner ! I added a --xpath option to xmllint to allow virsh dumpxml myguest | xmllint --xpath "//interfa...@type='network']/mac" but I commited this last week only so it's not yet in any libxml2 release. When libxml2-2.7.7 or successors are out then this may be sufficient (but less complete than XMLStarlet !) Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ dan...@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list