Sie können das vmcli-Befehlszeilendienstprogramm in VMware Fusion für die Interaktion mit dem Hypervisor im macOS-Terminalfenster verwenden. Mithilfe der vmcli-Befehle können Sie verschiedene VM-Vorgänge ausführen, wie z. B. das Erstellen einer neuen virtuellen Maschine oder einer VM-Vorlage.

Ausführen des vmcli-Befehlszeilendienstprogramms

Sie können die vmcli im macOS-Terminalfenster ausführen. Sie können auch Skripts erstellen, um mehrere Befehle auszuführen.

Um den vmcli-Befehl auszuführen und die Syntax für die Verwendung der verfügbaren Funktionen abzurufen, führen Sie den folgenden Befehl aus.

vmcli --help

Nachdem Sie diesen Befehl ausgeführt haben, erhalten Sie die folgende Ausgabe.

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

Um mehr über die Syntax jedes Moduls oder Vorgangs zu erfahren, z. B. des Power-Moduls, können Sie den folgenden Befehl ausführen.

vmcli Power --help

Nachdem Sie diesen Befehl ausgeführt haben, erhalten Sie die folgende Ausgabe.

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.

Sie können auch Nutzungsinformationen für einen bestimmten Vorgang eines beliebigen Moduls abrufen.

vmcli Power query --help

Nachdem Sie diesen Befehl ausgeführt haben, erhalten Sie die folgende Ausgabe.

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.

Verwenden von vmcli zum Erstellen einer Vorlage aus einer vorhandenen virtuellen Maschine

Sie können eine VM-Vorlage aus einer vorhandenen virtuellen Maschine erstellen. Sie können diese Vorlage später verwenden, um eine neue virtuelle Maschine mit derselben Konfiguration zu erstellen.

Sie können die folgende Syntax verwenden.

vmwcli <source vmx path> vmtemplate create  -p <template vmtx path> -n <template name>
Variable Beschreibung
Quell-VMX-Pfad Pfad zur virtuellen Quellmaschine vmx, aus der die Vorlage erstellt wird.
Vorlagen-VMTX-Pfad Vollständiger Pfad zum neuen Ordner vmtemplate zusammen mit dem Dateinamen mit der Erweiterung .vmtx.

Beispiel: "~/Virtual Machines.localized/clonevmtest2.vmwarevm/clonevmtest2.vmtx"

Vorlagenname Name der Vorlage.

Bereitstellen einer VM-Vorlage mithilfe von vmcli

Sie können die VMTemplate bereitstellen, die mit dem vmcli-Befehl erstellt wurde. Mithilfe der folgenden Syntax können Sie eine neue virtuelle Maschine aus der angegebenen VMTemplate am selben Speicherort erstellen.

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

Erstellen einer neuen virtuellen Maschine mithilfe von vmcli

Sie können die folgende Syntax verwenden, um eine neue virtuelle Maschine zu erstellen.

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

Beispiel für das Erstellen einer virtuellen Maschine und das Anhängen einer ISO-Datei

Nachdem Sie die folgenden Schritte ausgeführt haben, können Sie eine neu erstellte virtuelle Maschine zur Bibliothek virtueller Maschinen hinzufügen und dann die virtuelle Maschine einschalten, um den Gastinstallationsvorgang mithilfe der ISO-Datei zu starten. Sie können die Syntax aus dem folgenden Beispiel verwenden.

Beispiel:
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-------"