shell 數組遍歷踩坑記

公司這邊,有服務須要用crontab進行重啓,因而把須要重啓的服務放到shell腳本中,一開始,腳本以下:html

#!/bin/bash

SERVICES=('service1' 'service2' 'service3' 'service4')

for x in ${SERVICES[*]}:
do
    echo 'restart service: '$x
    /usr/local/bin/supervisorctl restart $x
    # 每隔 5 分鐘重啓一個服務
    echo 'sleep 5 minutes'
    sleep 300
done

而後發現最後一個服務沒有重啓,嘗試了不少次,最後面發現原來是:問題形成的,修正後正確執行的代碼以下:shell

#!/bin/bash

SERVICES=('service1' 'service2' 'service3' 'service4')

for x in ${SERVICES[*]}
do
    echo 'restart service: '$x
    /usr/local/bin/supervisorctl restart $x
    # 每隔 5 分鐘重啓一個服務
    echo 'sleep 5 minutes'
    sleep 300
done

參考: http://www.voidcn.com/article/p-bgukqzyx-ko.htmlbash

相關文章
相關標籤/搜索