用case语句建立一个shell(功能是打开,关闭,重置,显示虚拟机)

#!/bin/bash

case "$1" in

start)                   /*当关键字为start时,执行打开虚拟机$2的语句

echo start $2 ...

virsh start $2 &> /dev/null

;;

poweroff)              /*当关键字为poweroff时,执行强制关闭虚拟机$2的语句

echo poweroff $2 ...

virsh destroy $2 &> /dev/null

;;

view)                /*当关键字为view时,执行显示虚拟机界面$2的语句

virt-viewer $2 &> /dev/null &

;;

reset)                /*当关键字为reset时,执行重启虚拟机$2

echo reset $2 ...

echo poweroff $2...

virsh destroy $2 &> /dev/null     /*强行关闭虚拟机$2

echo del $1.xml ...

virsh undefine $2 &> /dev/null    /*删除前端

echo create disk ...

qemu-img create -f qcow2 -b /var/lib/libvirt/images/$2.img /var/lib/libvirt/images/$2.img &> /dev/null                /*将硬盘快照一份

echo create $2 vm ...

virt-install \              /*创建虚拟机

--name $2 \

--ram 1000 \

--disk /var/lib/libvirt/images/$2.img \    /*创建硬盘目录

--import &> /dev/null &            /*导入图形界面

echo create $2 successful!!!

;;

*)

echo "error:please input reset|view|start|poweroff after three"

esac

时间: 2024-08-09 02:09:09

用case语句建立一个shell(功能是打开,关闭,重置,显示虚拟机)的相关文章

使用case语句编写一个系统服务脚本

case语句执行流程:case语句可以很好的代替if语句中的多分支结构,使用case分支语句时,有几个值得注意的特点如下所述: case行尾必须是单词"in",每一模式必须以右括号")"结束: 双分号"::"表示命令序列的结束: 模式字符串,可以用方括号表示一个连续的范围,如"[0-9]",还可以使用竖杠"|"表示或,如"A|B". 最后的" *) "表示默认模式,其

while循环 case语句 的一个脚本

小脚本: 执行效果 显示一个菜单 当输出菜单上给出的键后,执行相应的动作 即 当用户输出d 显示 show disk usages. 当然这也可以真的显示disk使用情况,只是加入的命令的不同,哈哈,,,这个是个人自己编写的,,看老师给出的题目. [[email protected] script]# cat choice.sh #!/bin/bash echo "(d|D) shwo disk usages." echo "(m|M) show memory usages.

[9-13]Shell系列3——分支结构if与case语句

本文旨在复习shell实现分支结构的3种if语句和case多分支结构语句,以及补充if和case的执行效率 知识储备 Shell脚本中语言结构还是那3种:顺序结构.选择结构.循环结构 分支结构与选择结构是同一概念,依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序 If语句和Case语句是在shell中实现分支结构的具体表现形式,同C语言中的if和switch语句 下面的语句我以结构流程图.代码实现[代码格式].具体例子来阐述 If单分支结构 流程图 代码实现 12345 if [ e

Shell的case语句

Shell case语句为多选择语句.可以用case语句匹配一个值与一个模式,如果匹配成功,执行相匹配的命令.case语句格式如下: 代码如下: case 值 in模式1)    command1    command2    ...    commandN    ;;模式2)    command1    command2    ...    commandN    ;;esac case工作方式如上所示.取值后面必须为单词in,每一模式必须以右括号结束.取值可以为变量或常数.匹配发现取值符合

switch case 语句

Switch case 语句 输入一个年月日,判断是这一年的第几天? Console.WriteLine("请输入年:"); int year = int.Parse(Console.ReadLine()); Console.WriteLine("请输入月:"); int month = int.Parse(Console.ReadLine()); Console.WriteLine("请输入日:"); int day = int.Parse(C

Java switch case 语句

switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支. switch case 执行时,一定会先进行匹配,匹配成功返回当前 case 的值,再根据是否有 break,判断是否继续输出,或是跳出判断. class Test { public static void main(String args[]){ //char grade = args[0].charAt(0); char grade = 'C'; switch(grade) { case 'A' : S

Java switch case语句

switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支. switch(expression){//变量类型可以是byte,short,int,char,String case value://case标签后面必须是字符串常量或字面量 //代码语句,当case的值和变量的值相等时,会执行case里面的代码语句,直到break时跳出switch语句 break;//遇到break,switch语句终止,case语句不是必要跟着break,没有break出现,程序会执

理论+实操:shell之case语句for/while/until循环语句、函数、数组-满满的干货

前言: 单引号表示纯符号 用双引号表字符串 case多分支语句 循环语句 for循环语句 while循环语句 until循环语句 shell函数 shell数组 一 : case语句的结构 1.1 case结构 多分支表现形式:if语句,case语句 case 语句可以使用正则表达式,正则表达式后面会去阐述 针对变量的不同取值,分别执行不同的命令程序 case 中::表示一句话的结束 如果匹配某一个固定值,大多数用caes,其适用于某一个固定值 如果匹配某一个区间范围,大多数用if else 语

(九)shell中case语句、程序传参、while

2.2.6.1.case语句(1)shell中的case语句和C语言中的switch case语句作用一样,格式有差异(2)shell中的case语句天生没有break,也不需要break,和C语言中的switch case不同.shell中的case默认就是匹配上哪个执行哪个,不会说执行完了还去执行后面的其他case(就好像shell中的case语言默认都带了break). 2.2.6.2.调用shell程序的传参(1)C语言中可以通过main函数的argc和argv给程序传参(详情参考<4.