1. 程式人生 > >高階指令碼進階—使用case的多功能選擇性指令碼

高階指令碼進階—使用case的多功能選擇性指令碼

應用場景:

  在應用指令碼決解實際的運維問題時,單功能指令碼有很多的不同應用環境,如不同的執行環境,不同的系統版本等,這時,就需要對指令碼的功能進行選擇,一個指令碼實現多功能多版本系統的維護,以減少溝通成本,而減少工作與溝通的複雜度是實際的工作中很有必要的,介紹一個簡單的實現小框架,使用case流分離工具進行功能分離:

 

#!/bin/bash
Title= oneSubtitle= twoSubtitle= threeSubtitle= fourSubtitle= fiveSubtitle= sixSubtitle= sevenSubtitle= echo cat <<EOF DATE : `date +%Y-%m-%d-%T` ========================================== $Title ========================================== **  1)$oneSubtitle ** ** 2)$twoSubtitle ** **  3)$threeSubtitle ** ** 4)$fourSubtitle ** ** 5)$fiveSubtitle ** ** 6)$sixSubtitle ** ** 7)$sevenSubtitle ** ========================================== EOF read -p "Please choose [1-7]:" num case $num in 1) function1 ;; 2) function2 ;; 3) function3 ;; 4) function4 ;; 5) function5 ;; 6) function6 ;; 7) function7 ;; *) clear ./$0 ;; esac

如上所示,小框架進行了七種不同場景的分離。

小結:

 而在實際的應用指令碼時,需要注意的有以下幾點:

1.功能與功能之間的交叉。

2.根據實際的情況,選擇不同的方式來進行。

3.考慮應用場景時,要考慮各種系統環境,提升程式碼的健壯性。

4.對相應命令的執行結果,不要一味的輸入到/dev/null下,這樣會錯失很多的資訊。

5.多測試,以實現功能的完