#!/bin/bash
#被克隆的目标机
vm_des_mach="vm002"
#克隆的列表,注意shell编程中使用 空格 作为数组元素分隔符
vm_clone_list=(vm005 vm006 vm007 vm008 vm009 vm010 vm011)
#克隆虚拟机的端口号
vm_clone_port=(5905 5906 5907 5908 5909 5910 5911)
#数组下标列表
vm_value=(0 1 2 3 4 5 6 7)
for vm in ${vm_value[@]}
do
#使用echo回显执行完每条命令后的状态
VBoxManage clonevm $vm_des_mach --mode machine --name ${vm_clone_list[vm]} --basefolder /home/s/apps/virtualbox/vms --register
VBoxManage modifyvm ${vm_clone_list[vm]} --vrde on --vrdeaddress 0.0.0.0 --vrdeport ${vm_clone_port[vm]}
./start.sh ${vm_clone_list[vm]}
done
这里需要注意有几点:
1、在shell脚本编程中,定义变量时,变量名不能有空格,不能是bash关键字,可以使用下划线,值需要用""包含。
2、shell脚本编程中,定义数组时用(),并且每个数组元素用空格分隔。
3、可以使用for in循环
4、定义过的变量,如要在命令中使用,请在定义的变量名前加$符号,否则命令会无效