您可以在 Workstation Pro 中使用 vmcli 命令行实用程序,从 Linux 终端窗口或在 Windows 命令提示符下与 Hypervisor 进行交互。通过使用 vmcli 命令,您可以执行各种虚拟机操作,例如创建新虚拟机或虚拟机模板。

运行 vmcli 命令行实用程序

您可以从 Linux 终端窗口或在 Windows 命令提示符下运行 vmcli。也可以创建脚本以运行多个命令。

要运行 vmcli 命令并获取相应语法来使用可用的功能,请运行以下命令。

vmcli --help

运行此命令后,您会收到以下输出。

vmcli --help
Usage: vmcli [-v | --version] [<vmx location>] <module> <command> [<args>] [--verbose] [-h | --help] [<vmx location>]

Top level arguments:
    -v, --version
        Display the version information.
Global arguments:
    <vmx location>        (required for commands working with VMs)
        Location of the vmx file to work with. Can be the first or last argument on the command line.
    --verbose
        Enable verbose logging.
    -h, --help
        Display the help information
Available modules:
    Chipset
        Chipset options.
    ConfigParams
        Set VM configuration parameters.
    Disk
        Module to perform disk operations.
    Ethernet
        Setup the ethernet configuration in the guest.
    Guest
        guest ops
    HGFS
        HGFS options.
    MKS
        Mouse, keyboard and screen operations.
    Nvme
        Setup NVME ports in the guest.
    Power
        Set the power state of the vm.
    Sata
        Setup SATA ports in the guest.
    Serial
        Setup serial ports in the guest.
    Snapshot
        Snapshot configuration
    Tools
        Tools related configuration.
    VM
        VM related Operations
    VMTemplate
        Create and Deploy vm template
    VProbes
        Setup VProbes in the guest

要了解每个模块或操作相关语法的更多信息,以 Power 模块为例,可运行以下命令。

vmcli Power --help

运行此命令后,您会收到以下输出。

vmcli Power --help
Usage: vmcli [-v | --version] [<vmx location>] Power  [--verbose] [-h | --help] query Start Stop Pause Reset Suspend Unpause [<vmx location>]

Top level arguments:
    -v, --version
        Display the version information.
Global arguments:
    <vmx location>        (required for commands working with VMs)
        Location of the vmx file to work with. Can be the first or last argument on the command line.
    --verbose
        Enable verbose logging.
    -h, --help
        Display the help information
Module:
    Power
        Set the power state of the vm.
Arguments available to module "Power":
    query
        Query the power state of the VM.
    Start
        Start the virtual machine.
    Stop
        Stop the virtual machine.
    Pause
        Pause the virtual machine.
    Reset
        Rest the virtual machine.
    Suspend
        Suspend the virtual machine.
    Unpause
        Unpause the virtual machine.

您还可以检索任何模块当中,某个特定操作的用法信息。

vmcli Power query --help

运行此命令后,您会收到以下输出。

vmcli power query --help
Usage: vmcli [-v | --version] [<vmx location>] Power query  [--verbose] [-h | --help] [-f | --format <2, 1, 0>] [<vmx location>]

Top level arguments:
    -v, --version
        Display the version information.
Global arguments:
    <vmx location>        (required for commands working with VMs)
        Location of the vmx file to work with. Can be the first or last argument on the command line.
    --verbose
        Enable verbose logging.
    -h, --help
        Display the help information
Module:
    query
        Query the power state of the VM.
Arguments available to module "query":
    -f, --format <2, 1, 0>
        Sets the format of the output.

使用 vmcli 从现有虚拟机创建模板

您可以从现有虚拟机创建虚拟机模板。以后则可使用此模板创建具有相同配置的新虚拟机。

可使用以下语法。

vmwcli <source vmx path> vmtemplate create  -p <template vmtx path> -n <template name>
变量 说明
source vmx path(源 vmx 路径) 源虚拟机 vmx 的路径,将从该虚拟机创建模板。
template vmtx path(模板 vmtx 路径) 带文件名和 .vmtx 扩展名的新 vmtemplate 文件夹的完整路径。

示例:"~/Virtual Machines.localized/clonevmtest2.vmwarevm/clonevmtest2.vmtx"

template name(模板名称) 模板的名称。

使用 vmcli 部署虚拟机模板

您可以部署通过 vmcli 命令创建的 VMTemplate。通过使用以下语法,可在同一位置从指定的 VMTemplate 创建新虚拟机。

VMTemplate Deploy -p <Full file path of vmtx file of existing VM template>

使用 vmcli 创建新虚拟机

您可以使用以下语法创建新虚拟机。

VM Create -n <vm name> -d <path where vm will be created>  -g <guest operating system>
例如:
VM Create -n myVM -d ~/Desktop/ -g windows9-64

创建虚拟机并将 ISO 附加到该虚拟机的示例

执行以下步骤后,您可以将新创建的虚拟机添加到虚拟机资源库,然后打开虚拟机电源,以使用 ISO 文件启动客户机安装过程。可使用以下示例中的语法。

例如:
echo "----creating VM-----"
 
vmcli VM Create -n windowstest -d ~/Desktop/test -g windows9-64
 
vmcli ConfigParams SetEntry displayName "windowstest"  ~/Desktop/test/windowstest.vmx
 
 
echo "----create Nvme vmdk related things-----"
 
vmcli nvme SetPresent nvme0 1 ~/Desktop/test/windowstest.vmx
 
vmcli Disk SetBackingInfo nvme0:0 disk windowstest.vmdk 1 ~/Desktop/test/windowstest.vmx
 
vmcli Disk SetPresent nvme0:0 1 ~/Desktop/test/windowstest.vmx
 
echo "----create sata disk for iso mounting-----"
 
vmcli Sata SetPresent sata0 1 ~/Desktop/test/windowstest.vmx
 
vmcli Disk SetBackingInfo sata0:0 cdrom_image ~/Documents/iso/22621.1.220506-1250.ni_release_CLIENT_ENTERPRISES_OEM_x64FRE_en-us.iso 1 ~/Desktop/test/windowstest.vmx
 
vmcli Disk SetPresent sata0:0 1 ~/Desktop/test/windowstest.vmx
 
echo "----create ethernet related things-----"
 
vmcli Ethernet query ~/Desktop/test/windowstest.vmx
 
vmcli Ethernet SetVirtualDevice ethernet0 vmxnet3 ~/Desktop/test/windowstest.vmx
 
vmcli Ethernet SetConnectionType ethernet0 nat ~/Desktop/test/windowstest.vmx
 
vmcli Ethernet SetAddressType ethernet0 generated "" ~/Desktop/test/windowstest.vmx
 
vmcli Ethernet SetLinkStatePropagation ethernet0 true  ~/Desktop/test/windowstest.vmx
 
vmcli Ethernet SetPresent ethernet0 1 ~/Desktop/test/windowstest.vmx
 
vmcli ConfigParams SetEntry  bios.bootOrder "cdrom,hdd" ~/Desktop/test/windowstest.vmx
 
echo "---------Done-------"