VirtualBox Control is a shell script application to manage virtual machines using the console.
It was originally written by Carlos Acosta, and published on his website, to manage VirtualBox virtual machines without using the graphical interface. It is written in bash script and uses VBoxManage intensively.
It handles basic start/stop/pause/resume functions, load/unload of removable media and configuration of the remote console port to access the virtual machine's console via vrdp protocol (Oracle VirtualBox extensions must be installed).
The original script works as intended and it manages virtual machines but I felt it lacked visual impact. There were some minor inconsistencies between menus and lack of color. There was also a problem with machines containing white spaces in their names that were simply not detected correctly.
Since the original version 1.2, I have incorporated several new features, some made by me and some from feedback received from other people.
If you like this script and wish to see new features added, feel free to contact me or to modify it yourself.
First screen after launching the script, with animated "Please wait" message:
Main menu waiting for user to select a virtual machine by its ID on the left:
Details and Control menu for a virtual machine:
Screen shown after selecting option 9) Load/Eject ISO images:
To make the script operational it's necessary to set its executable bits, at least once after you download it, with chmod.
$ chmod 755 vbctl.sh
After the executable bits are set, just run it by invoking the file or by running it inside another shell:
$ bash vbctl.sh
Note: although under Linux it's also possible to run this script with /bin/sh, in MacOS X it isn't, so don't run it with the default /bin/sh (Thanks Lance).
Oracle Examples (Carlos Acosta Blog) - The creator of the original script