Linux基礎之case條件選擇

一、case語法

case 變量引用(${}) in 

value1)

            語句1

            語句2

            …

            ;;

value2)

            語句1

            語句2

            …

            ;;

value3)

            語句1

            語句2

            …

            ;;

*)

            語句1

            語句2

            …

            ;;

esac

case語句相對if語句比較直觀簡潔,用法也相對比較簡單。

case示例:

         根據選項讓用戶選擇,然後根據用戶所選選項顯示出相應的信息

如果用戶選擇了第一項,則顯示硬盤使用信息

如果用戶選擇了第二項,則顯示內存使用信息

如果用戶現在了第三項,則選擇CPU負載信息

如果用戶選擇了第四項,則推出程序

#!/bin/bash
#Version:0.1
#Author:Myb_sir
#Pragram:這是一個case語句的基本用法
#Date:2014-03-30
#shwo()是一個函數,用法也比較簡單,主要用在shell腳本中的調用
showmenu(){
echo -n '#------------'
echo -n -e '\033[1;32m菜單\033[0m'
echo  '------------#'
echo -e "# \033[31md|D)顯示硬盤使用信息\033[0m       #"
echo -e "# \033[31mm|M)顯示內存使用信息\033[0m       #"
echo -e "# \033[31ml|L)顯示CPU負載信息\033[0m        #"
echo -e "# \033[31mq|Q)退出系統\033[0m               #"
echo -n '#--------'
echo -n -e '\033[1;32m版權所有:Myb\033[0m'
echo  '-------#'
}
#調用showmenu函數並清除屏幕
clear
showmenu
#提示用戶輸入一個選項
read -p "請從選項中選擇:" Choice
#使用while語句實現循環,只有當用戶輸入q或者Q時纔會退出程序
while [ "$Choice" != "q" -o "$Choice" != "Q" ];do
case $Choice in
d|D)
echo "#########硬盤使用信息#########"
df -lh
;;
m|M)
echo "##########內存使用信息########"
free -m
;;
l|L)
echo "##########CPU負載信息#########"
uptime
;;
q|Q)
echo "############退出系統##########"
exit 5
;;
*)
echo "#########您的輸入有誤!#######"
;;
esac
#調用showmenu函數
showmenu
#提示用戶重新輸入選項
read -p "請從選項中選擇:" Choice
done

執行結果:

image

 

image

總結:case條件判斷看起來比較簡潔,這個腳本中使用了函數調用、while循環語句、case選擇語句、read命令和echo命令中的設置顏色功能,總體來說比較簡單。只要思路清晰就可以很快的寫出來。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章