Aplicacion en Batch y Bash de VBoxManage list

Iniciado por Hekaly, 27 Octubre 2010, 11:18 AM

0 Miembros y 1 Visitante están viendo este tema.

Hekaly

Desde hace unos dias desde mi blog de comtecknet estoy creando miniaplicaciones para gestionar VBoxManage. Aqui os dejo el codigo para versio Windows como en linux.

Para el funcionamiento de esta aplicacion es nesesario tener instalado en nustro ordenador VirtualBox.

Windows:  

Código (dos) [Seleccionar]
@echo off

cd "%ProgramFiles%\oracle\virtualbox"

mode con lines=130 cols=100
title Gestion de VBoxManage list
color a

:: Creado por Comtecknet.

rem --------------
rem - variables  -
rem --------------

set ruta=%ProgramFiles%\oracle\virtualbox

rem -------------------------------------------------------------------------------
rem - Etiqueta de inicio, solo se muestra si no existe la estructura de carpetas. -
rem -------------------------------------------------------------------------------

:preambulo

if exist "%ruta%\Informes\Vboxmanage list" (goto inicio)

echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º  Esta aplicacion puede generar informes, guardando el resultado en un      º
echo º  archivo .txt.                                                             º
echo º                                                                            º
echo º  Los informes se guardaran dentro de la carpeta informes dentro de         º
echo º  VirtualBox, que por defecto suele estar en: "Archivos de programa\oracle" º
echo º                                                                            º
echo º  Este sera la estructura de carpetas                                       º
echo º                                                                            º
echo º \                                                                          º
echo º ÀÄÄArchivos de programa\oracle\VirtualBox                                  º
echo º                                    ÀÄÄInformes                             º
echo º                                         ÀÄÄÄVboxmanage list                º
echo º                                                                            º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
set /p preambulo="Quiere crear la estructura de carpetas (si/no): "

if %preambulo% EQU si (

if not exist "%ruta%\Informes" (md "%ruta%\Informes")
if not exist "%ruta%\Informes\Vboxmanage list" (md "%ruta%\Informes\Vboxmanage list")

)

rem ----------------------------------
rem - Etiqueta con el menu principal -
rem ----------------------------------

:inicio

cls
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º               PARAMETROS DE VBOXMANAGE LIST                             º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º 0.  Documentacion (leer antes de usar la aplicacion)                    º
echo º 1.  Mostrar todas las maquinas virtuales                                º
echo º 2.  Mostrar todas las maquinas virtuales activas                        º
echo º 3.  Mostrar todos los Sistemas Operativos soportados                    º
echo º 4.  Mostrar disco duros instalados                                      º
echo º 5.  Mostrar imagenes ISO asociadas                                      º
echo º 6.  Mostrar informacion adicional de las imagenes ISO                   º
echo º 7.  Mostrar las imagenes de disquete                                    º
echo º 8.  Mostrar informacion adicional sobre las imagenes de disquetes       º
echo º 9.  Mostrar informacion sobre las targetas de red (hostifs)             º
echo º 10. Mostrar informacion sobre las targetas de red (bridgedifs)          º
echo º 11. Mostrar informacion sobre las unidades USB                          º
echo º 12. Mostrar informacion sobre los filtros de USB                        º
echo º 13. Mostrar informacion sobre las propiedades del sistema               º
echo º 14. Mostrar informacion sobre el sistema local                          º
echo º 15. Mostrar informacion sobre nuestra red                               º
echo º 16. Mostrar informacion sobre el identificador de CPU                   º
echo º 17. Mostrar informacion sobre las capacidades de nuestro disco duro     º
echo º                                                                         º
echo º 18. Salir                                                               º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
set /p opcion="Elige una opcion de la lista: "

if %opcion% == 0 (goto documentacion)
if %opcion% == 1 (cls & vboxmanage list vms & call :cuestion "vboxmanage list vms" "Listado de maquinas virtuales")
if %opcion% == 2 (cls & vboxmanage list runningvms & call :cuestion "vboxmanage list runningvms" "Maquinas virtuales funcionando")
if %opcion% == 3 (cls & vboxmanage list ostypes & call :cuestion "vboxmanage list ostypes" "Sistemas Operativos soportados")
if %opcion% == 4 (cls & vboxmanage list hdds & call :cuestion "vboxmanage list hdds" "Listado de disco duros")
if %opcion% == 5 (cls & vboxmanage list dvds & call :cuestion "vboxmanage list dvds" "Listado de Imagenes ISO")
if %opcion% == 6 (cls & vboxmanage list hostdvds & call :cuestion "vboxmanage list hostdvds" "Info adicional de imagenes ISO")
if %opcion% == 7 (cls & vboxmanage list floppies & call :cuestion "vboxmanage list floppies" "Listado de imagenes de disquete")
if %opcion% == 8 (cls & vboxmanage list hostfloppies & call :cuestion "vboxmanage list hostfloppies" "Info adicional de imagenes de disquete")
if %opcion% == 9 (cls & vboxmanage list hostifs & call :cuestion "vboxmanage list hostifs" "Info targetas de red - hostifs")
if %opcion% == 10 (cls & vboxmanage list bridgedifs & call :cuestion "vboxmanage list bridgedifs" "Info targetas de red - bridgedifs")
if %opcion% == 11 (cls & vboxmanage list usbhost & call :cuestion "vboxmanage list usbhost" "Informacion de dispositivos USB")
if %opcion% == 12 (cls & vboxmanage list usbfilters & call :cuestion "vboxmanage list usbfilters" "Filtros de dispositivos USB")
if %opcion% == 13 (cls & vboxmanage list systemproperties & call :cuestion "vboxmanage list systemproperties" "Porpiedades del sistema")
if %opcion% == 14 (cls & vboxmanage list hostinfo & call :cuestion "vboxmanage list hostinfo" "Propiedades del sistema local")
if %opcion% == 15 (CLS & vboxmanage list dhcpservers & call :cuestion "vboxmanage list dhcpservers" "Propiedades de nuestra red")
if %opcion% == 16 (cls & vboxmanage list hostcpuids & call :cuestion "vboxmanage list hostcpuids" "Identificador de la CPU")
if %opcion% == 17 (cls & vboxmanage list hddbackends & call :cuestion "vboxmanage list hddbackends" "Capacidades del disco duro")
if %opcion% == 18 (goto EOF)
if %opcion% GTR 18 (echo Opcion incorrecta, pulsa una tecla para continuar & pause > nul & goto inicio)

rem ----------------------------------------------------------------------
rem - Etiqueta que muestra la ayuda de los parametros de Vboxmanage list -
rem ----------------------------------------------------------------------

:documentacion

cls
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º                          DOCUMENTACION DE VBOXMANAGE LIST                            º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º  A continuacion teneis un listado de los parametros de VBoxmanage list               º
echo º  seguido de las funciones que realiza.                                               º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º vms              º  Muestra un listado de todas las maquinas virtuales creadas       º
echo º                  º  en VirtualBox.                                                   º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º runningvms       º  Muestra todas las maquinas virtuales que se estan                º
echo º                  º  ejecutando en este momento.                                      º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º ostypes          º  Muestra todos los sistemas operativos que soporta VirtualBox.    º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hdds             º  Muestra todos los disco duros que hemos creado en VirtualBox,    º
echo º                  º  existan o no por que la hemos borrado.                           º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º dvds             º  Muestra todas las imagenes ISO que estan asociadas a las maquinasº
echo º                  º  virtuales en VirtualBox.                                         º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º floppies         º  Muestra la informacion de todas las imagenes de disquete que     º
echo º                  º  hemos creado en VirtualBox.                                      º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hostdvds         º  Muestra la informacion de las imagenes ISO para acceder a ellas  º
echo º                  º  desde dentro de VirtualBox.                                      º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hostfloppies     º  Muestra imformacion sobre las imagenes de disquete para acceder aº
echo º                  º  ellas desde dentro de VirtualBox.                                º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hostifs          º  Muestra imformacion sobre las targetas de red                    º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º usbhost          º  Muestra informacion acerca de las unidades USB que tenemos en    º
echo º                  º  nuestro PC.                                                      º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º usbfilters       º  Muestra informacion sobre los filtros que hemos utilizado para   º
echo º                  º  los dispositivos USB.                                            º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º systemproperties º  Muestra informacion sobre las propiedades de nuestro sistema     º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hostinfo         º  Muestra informacion sobre nuestro sistema local.                 º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º bridgedifs       º  Muestra informacion sobre las targetas de red, igual que hostifs º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º dhcpservers      º  Muestra informaciob sobre la configuracion de nuestra red        º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hostcpuids       º  Muestra informacion sobre la ID de nuestra CPU.                  º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
echo º hddbackends      º  Muestra informacion sobre las capacidades de nuestro disco duro. º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
echo Pulsa una tecla para volver al menu & pause > nul & goto inicio

rem ----------------------------------------------------------------------------
rem - Etiqueta cuya funcion es preguntar si queremos generar o no los informes -
rem ----------------------------------------------------------------------------

:cuestion

echo. & echo La orden se ha ejecutado correctamente.
set /p cuestion="Quiere guardar el resultado en un archivo (si/no): "

if %cuestion% EQU si ("%1" > "%ProgramFiles%\oracle\virtualbox\Informes\Vboxmanage list\"%2".txt"
echo Archivo guardado correctamente, pulsa una tecla & pause > nul & goto inicio)
if %cuestion% EQU no (goto inicio)

rem ------------------------
rem - Fin de la aplicacion -
rem ------------------------

:EOF


Linux (Hecho en Mandriva):

#!/bin/bash

##########################################################
# Aplicacion para gestionar el comando VBoxManage list.  #
#                                                        #
# Creado por Comtecknet.                                 #
##########################################################

# Para el funcionamiento de esta aplicacion se nesesita tener instalado VirtualBox.

clear

# Informacion previa.

echo "##############################################################################"
echo "#  Esta aplicacion genera informes guardando el resultado en un archivo      #"
echo "# .txt.                                                                      #"
echo "#                                                                            #"
echo "#  Los informes se guardaran dentro de la carpeta VBoxManage list, dentro de #"
echo "#  una carpeta llamana Informes VirtualBox, creada en /home/usuario          #"
echo "#                                                                            #"
echo "#  Este sera la estructura de carpetas                                       #"
echo "#                                                                            #"
echo "# \                                                                          #"
echo "#  |_home/usuario/Informes VirtualBox                                        #"
echo "#                         |_VBoxManage list                                  #"
echo "#                                                                            #"
echo -e "##############################################################################\n"
echo "Pulsa una tecla para comenzar con la aplicacion."
read -p ""

# Funcion que se encarga de guardar generar y guardar los informes. Recibe dos parametros,
# el comando a usar y el nombre del documento. Tambien genera la fecha actual para cada
# informe.

function informe() {
fecha=`date +"%d-%B-%Y-(%A)"`
comando=$1
$comando > "$HOME/Informes VirtualBox/VBoxManage list/$fecha $2.txt"
read -p "Informe guardado, pulsa una tecla para continuar."
menu_inicio
}

# Funcion que muestra la ayuda de VBoxManage list, esto opcion es visualizada con la opcion "0"
# del menu principal.

function documentacion() {
clear

echo "########################################################################################"
echo "#                          DOCUMENTACION DE VBOXMANAGE LIST                            #"
echo "########################################################################################"
echo "#  A continuacion teneis un listado de los parametros de VBoxmanage list               #"
echo "#  seguido de las funciones que realiza.                                               #"
echo "########################################################################################"
echo "# vms              #  Muestra un listado de todas las maquinas virtuales creadas       #"
echo "#                  #  en VirtualBox.                                                   #"
echo "########################################################################################"
echo "# runningvms       #  Muestra todas las maquinas virtuales que se estan                #"
echo "#                  #  ejecutando en este momento.                                      #"
echo "########################################################################################"
echo "# ostypes          #  Muestra todos los sistemas operativos que soporta VirtualBox.    #"
echo "########################################################################################"
echo "# hdds             #  Muestra todos los disco duros que hemos creado en VirtualBox,    #"
echo "#                  #  existan o no por que la hemos borrado.                           #"
echo "########################################################################################"
echo "# dvds             #  Muestra todas las imagenes ISO que estan asociadas a las maquinas#"
echo "#                  #  virtuales en VirtualBox.                                         #"
echo "########################################################################################"
echo "# floppies         # Muestra la informacion de todas las imagenes de disquete que      #"
echo "#                  #  hemos creado en VirtualBox.                                      #"
echo "########################################################################################"
echo "# hostdvds         #  Muestra la informacion de las imagenes ISO para acceder a ellas  #"
echo "#                  #  desde dentro de VirtualBox.                                      #"
echo "########################################################################################"
echo "# hostfloppies     #  Muestra imformacion sobre las imagenes de disquete para acceder a#"
echo "#                  #  ellas desde dentro de VirtualBox.                                #"
echo "########################################################################################"
echo "# hostifs          #  Muestra imformacion sobre las targetas de red                    #"
echo "########################################################################################"
echo "# usbhost          #  Muestra informacion acerca de las unidades USB que tenemos en    #"
echo "#                  #  nuestro PC.                                                      #"
echo "########################################################################################"
echo "# usbfilters       #  Muestra informacion sobre los filtros que hemos utilizado para   #"
echo "#                  #  los dispositivos USB.                                            #"
echo "########################################################################################"
echo "# systemproperties #  Muestra informacion sobre las propiedades de nuestro sistema     #"
echo "########################################################################################"
echo "# hostinfo         #  Muestra informacion sobre nuestro sistema local.                 #"
echo "############################################3###########################################"
echo "# bridgedifs       #  Muestra informacion sobre las targetas de red, igual que hostifs #"
echo "########################################################################################"
echo "# dhcpservers      #  Muestra informaciob sobre la configuracion de nuestra red        #"
echo "########################################################################################"
echo "# hostcpuids       #  Muestra informacion sobre la ID de nuestra CPU.                  #"
echo "########################################################################################"
echo "# hddbackends      #  Muestra informacion sobre las capacidades de nuestro disco duro. #"
echo "########################################################################################"
read -p "Pulsa una tecla para volver el menu principal."
menu_inicio
}

# Funcion que muestra el menu principal pudiendo elegir entre 19 opciones posibles.

function menu_inicio() {
clear
echo "##########################################################################"
echo "#               PARAMETROS DE VBOXMANAGE LIST                            #"
echo "##########################################################################"
echo "# 0.  Documentacion (leer antes de usar la aplicacion)                   #"
echo "# 1.  Mostrar todas las maquinas virtuales                               #"
echo "# 2.  Mostrar todas las maquinas virtuales activas                       #"
echo "# 3.  Mostrar todos los Sistemas Operativos soportados                   #"
echo "# 4.  Mostrar disco duros instalados                                     #"
echo "# 5.  Mostrar imagenes ISO asociadas                                     #"
echo "# 6.  Mostrar informacion adicional de las imagenes ISO                  #"
echo "# 7.  Mostrar las imagenes de disquete                                   #"
echo "# 8.  Mostrar informacion adicional sobre las imagenes de disquetes      #"
echo "# 9.  Mostrar informacion sobre las targetas de red (hostifs)            #"
echo "# 10. Mostrar informaciob sobre las targetas de red (bridgedifs)         #"
echo "# 11. Mostrar informacion sobre las unidades USB                         #"
echo "# 12. Mostrar informacion sobre los filtros de USB                       #"
echo "# 13. Mostrar informacion sobre las propiedades del sistema              #"
echo "# 14. Mostrar informacion sobre el sistema local                         #"
echo "# 15. Mostrar informacion sobre nuestra red                              #"
echo "# 16. Mostrar informacion sobre el identificador de CPU                  #"
echo "# 17. Mostrar informaciob sobre las capacidades de nuestro disco duro    #"
echo "#                                                                        #"
echo "# 18. Salir de la aplicacion                                             #"
echo -e "##########################################################################\n"
PS3="Elige una opcion del menu: "
select i in Opcion{0..18}
do case $i in
Opcion0) clear ; documentacion;;
Opcion1) clear ; VBoxManage list vms ; read -p "" ; informe "VBoxManage list vms" "Listado de maquinas virtuales";;
Opcion2) clear ; VBoxManage list runningvms ; read -p "" ; informe "VBoxManage list runningvms" "Maquinas virtuales funcionando";;
Opcion3) clear ; VBoxManage list ostypes ; read -p "" ; informe "VBoxManage list ostypes" "Sistemas Operativos soportados";;
Opcion4) clear ; VBoxManage list hdds ; read -p "" ;  informe "VBoxManage list hdds" "Listado de disco duros";;
Opcion5) clear ; VBoxManage list dvds ; read -p "" ; informe "VBoxManage list dvds" "Listado de Imagenes ISO";;
Opcion6) clear ; VBoxManage list hostdvds ; read -p "" ; informe "VBoxManage list hostdvds" "Info adicional de imagenes ISO";;
Opcion7) clear ; VBoxManage list floppies ; read -p "" ; informe "VBoxManage list floppies" "Listado de imagenes de disquete";;
Opcion8) clear ; VBoxManage list hostfloppies ; read -p "" ; informe "VBoxManage list hostfloppies" "Info adicional de imagenes de disquete";;
Opcion9) clear ; VBoxManage list hostifs ; read -p "" ; informe "VBoxManage list hostifs" "Info targetas de red - hostifs";;
Opcion10) clear ; VBoxManage list bridgedifs ; read -p "" ; informe "VBoxManage list bridgedifs" "Info targetas de red - bridgedifs";;
Opcion11) clear ; VBoxManage list usbhost ; read -p "" ; informe "VBoxManage list usbhost" "Informacion de dispositivos USB";;
Opcion12) clear ; VBoxManage list usbfilters ; read -p "" ; informe  "VBoxManage list usbfilters" "Filtros de dispositivos USB";;
Opcion13) clear ; VBoxManage list systemproperties ; read -p "" ; informe "VBoxManage list systemproperties" "Porpiedades del sistema";;
Opcion14) clear ; VBoxManage list hostinfo ; read -p "" ; informe "VBoxManage list hostinfo" "Propiedades del sistema local";;
Opcion15) clear ; VBoxManage list dhcpservers ; read -p "" ; informe "VBoxManage list dhcpservers" "Propiedades de nuestra red";;
Opcion16) clear ; VBoxManage list hostcpuids ; read -p "" ; informe "VBoxManage list hostcpuids" "Identificador de la CPU";;
Opcion17) clear ; VBoxManage list hddbackends ; read -p "" ; informe "VBoxManage list hddbackends" "Capacidades del disco duro";;
Opcion18) clear ; exit;;
esac
done
}

# Despues de mostrar la informacion previa, se llama a la funcion "menu_inicio"
# para comenzar a usar la aplicacion

menu_inicio




No creo que sea la forma mas corta de hacer estas aplicacion, pero seguro que a mas de uno le vale.

P.D: He probado los dos codigos con exito, si no es asi deja un comentario.