国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁(yè) > 課堂 > 基礎(chǔ)知識(shí) > 正文

shell的參數(shù)和腳本流程改進(jìn)

2024-09-12 20:30:07
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
  今天痛下決心,把事務(wù)的工作一定要使用平臺(tái)來(lái)做,時(shí)間短,任務(wù)緊,之前的運(yùn)維開(kāi)發(fā)是鋪了一個(gè)面,每個(gè)面都做一些相關(guān)的事情,所以工作整體看都有進(jìn)展,但是最后沒(méi)有一個(gè)專注的功能。
 
  所以我就在想到底是怎么回事,我能不能專注一些,哪怕就實(shí)現(xiàn)一個(gè)簡(jiǎn)單的功能,把它做好做透,其他的功能是不是能夠同樣復(fù)制很多的思想。于是乎,上班后我開(kāi)始整理自己的思路,一邊問(wèn)自己,一邊回答,每個(gè)回答都對(duì)應(yīng)兩列,一個(gè)是需要做的改進(jìn)(action),還有一個(gè)是這個(gè)action的預(yù)估時(shí)間。結(jié)果幾分鐘下來(lái),我發(fā)現(xiàn)如果理想的情況下,我只需要2個(gè)小時(shí)就能搞定,這么一想,還是能接受的,于是對(duì)需要做的事情排了一個(gè)順序,立馬開(kāi)干。
 
  我的設(shè)計(jì)是使用運(yùn)維平臺(tái)連接中控服務(wù)器來(lái)級(jí)聯(lián)觸發(fā)遠(yuǎn)程操作,這樣運(yùn)維平臺(tái)對(duì)所有環(huán)境的耦合性是最低的。
 
  哪怕是最簡(jiǎn)陋的操作,也要咬著牙完成,于是大體是這樣的流程,上午的時(shí)候有兩個(gè)部署需求,下午有兩個(gè),第一個(gè)是在半調(diào)試狀態(tài)下完成的,第二個(gè)開(kāi)始做腳本的模塊化整理,是一個(gè)半自動(dòng)的過(guò)程,然后發(fā)現(xiàn)了一些問(wèn)題,非常糾結(jié)的去修復(fù)歷史部署問(wèn)題,等到第三個(gè)需求的時(shí)候,明顯好了許多,到了第四個(gè),就可以一口氣完成了,流程打通了,細(xì)節(jié)就可以打磨了。
 
  于是我對(duì)有的腳本的邏輯進(jìn)行改造,有一個(gè)很通用的需求,假設(shè)腳本是initdb.sh要調(diào)用這個(gè)腳本需要輸入一系列的參數(shù),比如有5個(gè)參數(shù)。
 
  這個(gè)腳本里面有10個(gè)步驟,每個(gè)步驟都是使用function來(lái)實(shí)現(xiàn)的。如果要處理這5個(gè)參數(shù),同時(shí)能夠控制10個(gè)步驟的執(zhí)行,比如第2步不執(zhí)行,第3步執(zhí)行。腳本中其實(shí)還是比較難以管理和實(shí)現(xiàn)的。
 
  我設(shè)想了幾種實(shí)現(xiàn)思路:
 
  1)把10個(gè)步驟拆分成10個(gè)腳本,然后每個(gè)腳本都有自己的調(diào)用方式,獨(dú)立控制
 
  2)寫(xiě)一個(gè)配置腳本,比如main.sh然后在這個(gè)腳本里控制initdb.sh的執(zhí)行情況
 
  第二種看起來(lái)好一些,但是問(wèn)題還是沒(méi)有解決,因?yàn)閰?shù)怎么管理,10個(gè)步驟怎么處理還是得細(xì)化。
 
  我的初步設(shè)想是5個(gè)參數(shù),外帶一個(gè)參數(shù)即可,前面五個(gè)參數(shù)和一個(gè)步驟的參數(shù)。
 
  預(yù)期執(zhí)行情況大體如下:
 
  # sh a.sh x x x x x 'init1 init3 init2'
 
  init1
 
  init3
 
  init2
 
  即執(zhí)行的時(shí)候是按照init1 init3 init2的方式執(zhí)行的。
 
  關(guān)鍵代碼如下:
 
  function init1(){
 
  echo 'init1'
 
  }
 
  function init2(){
 
  echo 'init2'
 
  }
 
  function init3(){
 
  echo 'init3'
 
  }
 
  function initdb(){
 
  arr=$1
 
  for fun in ${arr[*]}; do
 
  echo $i
 
  case $fun in
 
  init1)
 
  echo "test init1"
 
  init1
 
  ;;
 
  init2)
 
  echo "test init2"
 
  init2
 
  ;;
 
  init3)
 
  echo "test init3"
 
  init3
 
  ;;
 
  *)
 
  echo "out of scope"
 
  esac
 
  done
 
  }
 
  init_par=$1
 
  actions=($init_par)
 
  initdb "${actions[*]}"
 
  執(zhí)行結(jié)果如下:
 
  [root@dev01 test]# sh a.sh 'init1 init3 init2'
 
  test init1
 
  init1
 
  test init3
 
  init3
 
  test init2
 
  init2
 
  這里有個(gè)問(wèn)題,那就是我們輸入的操作步驟可能是無(wú)序的,但是執(zhí)行的時(shí)候是希望按照順序,比如步驟2是依賴于步驟1的,這個(gè)我們是明確的。如果要實(shí)現(xiàn)這樣一個(gè)需求,就需要額外的一些補(bǔ)充,那就是排序功能,或者是前端傳入的時(shí)候來(lái)控制更好。
 
  沒(méi)事,能者多勞,我們就先實(shí)現(xiàn)了。保證能正確的運(yùn)行起來(lái),于是代碼又開(kāi)始一通改動(dòng)。
 
  function init1(){
 
  echo 'init1'
 
  }
 
  function init2(){
 
  echo 'init2'
 
  }
 
  function init3(){
 
  echo 'init3'
 
  }
 
  function initdb(){
 
  arr=$1
 
  complete_arr=(init3 init1 init2)
 
  order_arr=()
 
  for act_tmp in ${complete_arr[*]}; do
 
  if [[ " ${arr[@]} " =~ " $act_tmp " ]];then
 
  echo $act_tmp
 
  order_arr[${#order_arr[@]}]=$act_tmp
 
  echo order_arr[${#order_arr[@]}]
 
  fi
 
  done
 
  for fun in ${order_arr[*]}; do
 
  echo $i
 
  case $fun in
 
  init1)
 
  echo "test init1"
 
  init1
 
  ;;
 
  init2)
 
  echo "test init2"
 
  init2
 
  ;;
 
  init3)
 
  echo "test init3"
 
  init3
 
  ;;
 
  *)
 
  echo "out of scope"
 
  esac
 
  done
 
  }
 
  init_par=$1
 
  actions=($init_par)
 
  initdb "${actions[*]}"
 
  假設(shè)正確的步驟我們改為了init3 init1 init2,傳入?yún)?shù)為init1 init3 init2,如果能夠轉(zhuǎn)換,幸福感就大大提高了。
 
  腳本的執(zhí)行結(jié)果如下:
 
  [root@dev01 test]# sh aa.sh 'init1 init3 init2'
 
  init3
 
  order_arr[1]
 
  init1
 
  order_arr[2]
 
  init2
 
  order_arr[3]
 
  test init3
 
  init3
 
  test init1
 
  init1
 
  test init2
 
  init2
 
  可見(jiàn)是達(dá)到了預(yù)期的目標(biāo)了,所以這個(gè)思路可以借鑒,在其他的地方也可以參考使用。

(編輯:武林網(wǎng))

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
sm国产在线调教视频| 日本黄色免费网址| 日韩黄色成人| 日本黄在线观看| 国产尤物视频| 2021天堂中文幕一二区在线观| 中文字幕色视频| 国产精品爱久久久久久久小说| 永久免费在线观看| 福利资源在线久| 精品欧美色视频网站在线观看 | 在线播放www| 免费视频中文字幕| 国产福利在线看| 啪啪免费视频一区| 国产福利在线| 天天av综合网| 麻豆视频在线观看免费网站| 国产精品伦一区二区三区视频| 天堂网中文在线| 国产二区三区四区| 导航福利在线| 男女羞羞视频在线观看| 精品国产一区二区三区不卡在线| 黄网址在线播放免费| 中文字幕不卡| 不卡av免费观看| av片在线观看永久免费| 国产精品178页| 中文字幕人成高视频| 黄色网页网址在线免费| 亚洲精品视频区| ·天天天天操| 国产精品区一区二| 99视频在线观看地址| 国产在线一二三区| 毛片视频免费观看| 青青青国产视频| 午夜在线视频| 在线观看国产福利视频| 中文字幕在线免费观看| 欧美亚洲天堂| xxx国产精品| eeuss在线观看| 三级小说一区| 青青久草在线| 青娱乐在线视频观看| 天天插天天狠天天透| wwww在线观看免费视频| 亚洲成人在线播放| 青青九九免费视频在线| 非洲黑人最猛性xxxx交| 午夜免费福利在线观看| 国产一二三区精品视频| 中文字幕一区免费| 中文字幕高清av| 国产精品第八页| 在线āv视频| 青青艹在线视频| 国产麻豆高清视频在线第一页| 国产在线拍揄自揄拍视频| 久久99精品久久久久久野外| 综合图区亚洲白拍在线 | 伊人久久青青草| 在线国产小视频| 四虎成年永久免费网站| 青青草原国产在线观看| 国产真实伦在线观看| 国产一卡二卡3卡4卡四卡在线| 91xx在线观看| 国产主播色在线| 一个人看的www免费观看视频| 麻豆精品免费视频入口| 国产人成高清视频观看| 四虎精品视频| 国产激情视频在线观看| 欧美日韩一区二区三区在线播放 | 黄网站在线观看高清免费| 国产中文字幕av| 在线免费看黄网站| 中文字幕av中文字幕| 日本在线观看| 在线视频99| 国产不卡一卡2卡三卡4卡5卡在线| 天天插天天射| av大片在线播放| 中文字幕在线观看播放| 黄色国产在线| 牛牛热在线视频| av文字幕在线观看| 国产成人天天5g影院| 激情综合网五月激情| 亚洲成人av在线影院| 国产一级视频| 黄色网页网址在线免费| 日韩亚洲一区中文字幕| 中文资源在线官网| 国产二区视频在线观看| **三级三级97片毛片| 天天爱天天做色综合| 香蕉视频网站在线观看| 91精选福利| av男人的天堂网| 在线免费看黄| 亚洲网站一区| av在线首页| www网站在线观看| 青青草视频在线免费观看| 18被视频免费观看视频| 精品视频一二三| 亚洲成人在线播放| 九九热在线视频免费观看| 国产主播福利在线| 五月天丁香在线| 国产白浆在线| 日本啊v在线| 国产乱子视频| 国产精品666| www.香蕉视频在线观看| 国产在线中文字幕| 国产高清视频在线| 日本在线视频www鲁啊鲁| 老师我好爽再深一点的视频| 麻豆国产视频| 91涩漫在线观看c| 九九热在线视频| 18av在线视频| 黄色电影网站在线观看| 国产黄a三级三级三级av在线看| 在线成人综合色一区| 福利在线视频导航| av人人综合网| 国产无遮挡又黄又爽免费软件 | 国产在线观看av| 午夜免费福利在线观看| 国产高清视频免费最新在线| 在线黄色av| 黄色在线视频观看网站| 精品一区二区三区免费站| 久色视频在线观看| 2018中文字幕在线观看| 狠狠操狠狠色| 亚洲欧美精选| 在线影视一区| 国产日韩精品在线看| 九九热免费在线视频| av手机免费观看| 国产成人无吗| 国产激情在线| 高潮白浆视频| 欧美性猛交p30| a视频免费看| 伊人国产在线看一| 国产二区三区四区| 国产激情在线观看| 中文字幕有码在线视频| 非洲黑人最猛性xxxx交| а√最新版在线天堂| 四虎国产精品永久地址998| 在线三级中文| 亚洲精品国自产拍在线观看| 2019中文字幕在线电影免费| 国产二级片在线| 国产成人综合美国十次| 国产一二三视频| 最近中文字幕在线中文视频 | 最新国产在线| 国产在线小视频| 91xxx在线观看| 国产精品乱码一区二区三区视频| 中文字幕在线观看日本| √天堂资源地址在线官网| 国产免费自拍视频| 国内精品不卡| 国产一起色一起爱| 国产色在线播放| 国产精品久久久久久精| 中文岛国精品亚洲一区| 在线欧美一级视频| 黄污在线观看| 国产天堂在线| www.91av| 国产黄色在线网站| 青娱乐在线视频观看| 中文字幕免费中文| 精品极品三级久久久久| www.亚洲视频| 国产日韩欧美第一页| 尤物视频在线观看视频| 国产字幕在线看| 国产深夜视频在线观看| 色欧美在线观看| 最近中文字幕mv免费高清在线| 99在线播放| 国产一区二区三区美女秒播| 在线观看免费黄色| 国产精品黄页网站在线播放免费| 欧美视频免费一区二区三区| 91桃色在线| 69国产精品|