You can use the vmrun command-line utility in VMware Fusion to control virtual machines and automate guest operations on VMware virtual machines. The vmrun utility is included with the VIX API libraries.

Reviewers: djohn Thu Oct 19 08:52:22 PDT 2017

Does the VIX API info apply anymore?
Reviewers: djohn Thu Oct 19 11:58:37 PDT 2017

The info for this topic comes from the old "Using vmrun to Control Virtual Machines" guide. Here's the URL for the section this comes from: https://www.vmware.com/support/developer/vix-api/vix112_vmrun_command.pdf#page=7.

I've added info for Fusion 10. Please check that info carefully. However, the old information is so old that it could easily be out of date now. Therefore, please review all the information very carefully.

The capabilities of the vmrun utility are summarized in the following sections.

Power Commands

Power commands control virtual machine operations. You can use power commands to start (power on), stop (power off), reset (reboot), suspend while allowing local work to resume, pause without interrupting, and unpause (continue) a virtual machine.

Reviewers: djohn Thu Oct 19 09:48:28 PDT 2017

"pause without interrupting"? Without interrupting what?

Snapshot Commands

A snapshot captures the state of a virtual machine at the time of the snapshot, including all data on virtual disks. You can then use the snapshot to revert the virtual machine to its previous state. Snapshots are useful for data backup and as a placeholder for development and testing. You can use snapshot commands to list existing snapshots of a virtual machine, create a snapshot, delete a snapshot, and revert a virtual machine to its state at the time of a snapshot. Revert to snapshot does not resume running a virtual machine, even if it was running at the time of a snapshot. Fusion supports snapshots in a line only. It does not support snapshot trees.

Reviewers: djohn Thu Oct 19 09:45:37 PDT 2017

Is the sentence above about Fusion supporting snapshots in a line only correct? Is "in a line" correct? Does the line about snapshot trees naturally go along with the line about "...snapshots in a line..."? Should I move the two sentences toward the top? Perhaps, move them before the "You can then use..." sentence.

Network Adapter Commands

Network adapter commands allow you to control the virtual network adapters associated with a virtual machine. You can use network adapter commands to list, add, update, and remove a network adapter.

Reviewers: djohn Thu Oct 19 10:22:22 PDT 2017

I made up the description. Please review and suggest edits or additions.

Host Network Commands

Host network commands allow you to list the networks the host is connected to and to list, add, update, or remove a port forwarding configuration.

Reviewers: djohn Thu Oct 19 10:22:22 PDT 2017

I made up the description. Please review and suggest edits or additions.

Guest Operating System Commands

Guest operating system commands enable you to interact with a guest operating system in the following ways.

  • Run an executable program in the guest operating system or run an interpreted script that you provide.

  • Check if a file or directory exists in the guest, delete a file or directory, rename a file, list files, or create a new directory.

  • Copy a file from the host to the guest or from the guest to the host.

  • Create a temporary file in the guest operating system.

  • Add a shared folder from the host, make a shared folder writable in the guest, or remove a shared folder.

  • Capture a screen image from the guest.

  • List the processes running in the guest operating system or end a process (with permission).

    Reviewers: djohn Thu Oct 19 11:01:33 PDT 2017

    I don't understand the (with permission) part. Does it mean, "List the processes running in the guest operating sytstem or, if you have the appropriate permissions, end a process."

  • Read or write a variable in the guest operating system’s environment or virtual machine state.

The timeout, which is the wait period for VMware Tools, is five minutes for all guest‐related commands.

General Commands

General commands include commands that list all running virtual machines, upgrade the virtual machine hardware version, install VMware Tools in the guest operating system, and delete virtual machines. Additionally, you can clone a virtual machine image to another virtual machine.

Template Virtual Machine Commands

The template virtual machine command allows you to download a virtual machine template.

Reviewers: djohn Thu Oct 19 11:38:20 PDT 2017

I don't get this command. We don't discuss templates in the Fusion documentation, so I'm not sure users would understand what "template" means here.