shell腳本一鍵創建虛擬機
代碼如下:
1 #!/bin/bash 2 path1=/var/lib/libvirt/images/ #img存放路徑 3 path2=/etc/libvirt/qemu/ #xml文件存放路徑 4 function createkvm { #將創建虛擬機的命令定義為createkvm函數 5 qemu-img create -f qcow2 -b ${path1}jrjs.img ${path1}${1}.img #根據后端模板jrjs.img文件創建一個新的鏡像盤文件 6 sed -e "s/jrjs/${1}/" ${path1}jrjs.xml > ${path2}${1}.xml #修改后端原始jrjs.xml文件重定向到一個新的xml文件 7 virsh define ${path2}${1}.xml #定義xml文件 8 } 9 if [ $# == 0 ];then #判斷用戶是否輸入參數 10 echo "該腳本運行需要參數,如$0 test1 test2" #如果沒有輸入參數則返回“ ”的值 11 elif [ -e ${path1}${1}.img ];then #判斷用戶輸入參數是否存在 12 echo "該虛擬機名稱已經存在!" #如果存在則返回“ ”的值 13 else 14 for i in $# #若輸入參數則將所有的參數開始循環($*代表所以位置變量的值) 15 do 16 createkvm $i #調用定義好的創建虛擬機函數,開始根據參數循環創建 17 done 18 fi
上述代碼運行結果:
1.當用戶沒有輸入參數時:
2.當用戶輸入參數時:
3.當用戶輸入參數存在時: