Crear el script con el siguiente contenido:
for i in $(vboxmanage list runningvms | awk -F "{" '{print $2}';)
do
maquina="$i"
maquina=$(sed 's/.$//' <<< $maquina)
echo "$maquina"
vboxmanage showvminfo $maquina | grep 'Name\|NIC' | grep 'Name\|Rule'
done
Hacer el fichero ejecutable, por ejemplo si se llamaba listarPuertos.sh
chmod u+x listarPuertos.sh
Ejecutarlo
./listarPuertos.sh
Al ejecutarlo mostrará algo así:
29831584-8637-4550-9c32-40244879a10a
Name: Maquina 7.4
Storage Controller Name (0): IDE
Storage Controller Name (1): SATA
NIC 1 Rule(0): name = Oracle Listener, protocol = tcp, host ip = , host port = 19750, guest ip = , guest port = 9750
NIC 1 Rule(1): name = Rule 1, protocol = tcp, host ip = , host port = 8090, guest ip = , guest port = 8080
Name: 'Shared', Host path: '/home/user/1tbMec/vms/shared' (machine mapping), writable, auto-mount, mount-point: '/apps/compartido'
Name: Antes de Activar Alfa (UUID: d1db4ea6-c092-47fa-9129-9a92927c0f59)
Name: Antes de Cargar entorno gráfico K Workflow (UUID: 9d13d8de-7542-46e1-add1-ddf3075c9498)
Por ejemplo nos indica que el puerto 9750 de la máquina virtual Maquina 7.4 está publicado como 19750 o el 8080 (guest port) se mapea hacia el exterior como 8090 (host port).