在源代码中如何实现virt-install-extra args参数



virt-install如何实现--extra-args参数?我查看了Python源代码,没有发现任何信息。

virt-install 
--connect qemu+ssh://root@192.168.xx.xx:22/system 
--name centos7 
--ram 1024 
--disk path=/data/kvm/centos7.qcow2,size=8  
--vcpus 1 
--os-type linux 
--os-variant centos7 
--network bridge=virbr0 
--nographics --noautoconsole 
--location 'nfs://192.168.xx.xx/usr/share/nginx/html/Centos7'  
--extra-args 'console=ttyS0 --device=ens33 ip=192.168.xx.xx netmask=255.255.255.0 gateway=192.168.xx.xx ks=http://192.168.xx.xx/ks.cfg'

源代码在GitHub上,命令行参数添加到此处的argparse.ArgumentParser中。

我使用以下代码来了解--extra-args:中的连字符发生了什么

>>> import argparse
>>> parser = argparse.ArgumentParser(prog='PROG')
>>> parser.add_argument("-x", "--extra-args")
>>> parser.parse_args([])
Namespace(extra_args=None)

正如您所看到的,-被替换为_,因此参数是用extra_args检索的。

然后我使用GitHub搜索整个存储库:https://github.com/virt-manager/virt-manager/search?q=extra_args如果你在本地有代码,你也可以使用;到处搜索";您最喜欢的IDE的功能。

现在我祝你好运,分析这个参数在源代码中的实际作用!

最新更新