Quick Tip: Register all VMs on a datastore

Today I had an entire datastore of VMs to register, probably about 30 in total, and I didn’t want to go through the GUI and register each VM manually.

I came up with this quick unix one-liner:

# NOTE: My datastore path is /vmfs/volumes/5317a80e-add165f6-ada9-001517599f73
# replace this with whatever datastore needs searching

find /vmfs/volumes/5317a80e-add165f6-ada9-001517599f73 -name "*.vmx" -exec  vim-cmd solo/registervm {} \;

find /vmfs/volumes/5317a80e-add165f6-ada9-001517599f73 -name "*.vtmx" -exec  vim-cmd solo/registervm {} \;

Which gave me this:

/vmfs/volumes/5317a80e-add165f6-ada9-001517599f73 # find /vmfs/volumes/5317a80e-add165f6-ada9-001517599f73 -name "*.vmx" -exec  vim-cmd solo/registervm {} \;
/vmfs/volumes/5317a80e-add165f6-ada9-001517599f73 #

There are more elegant ways to do this in PowerCLI that are probably more scaleable (not registering everything on one host, for example) but this is a quick, down and dirty way to get the job done!

comments powered by Disqus


BeyondVM is a personal blog is about virtualization, system administration archetecture and the business of IT. I post research that I do into better management of virtualization and infrastructure, as well as things that I learn along the way.

The views expressed anywhere on this site are strictly mine and not the position of any employer, vendor or provider including but not limited to my employer, VMware or any of its companies. Any solutions that I offer are 'use at your own risk.'
Twitter Follow Me!
Recient Comments