瀏覽單個文章
NTC_TW_IT
Regular Member
 

加入日期: Jul 2014
文章: 61
請善用function,這樣可以大幅減少程式碼,也好讀
還有~~有些時候善用return code可以讓工作更簡單
ex: 假設你系統有一個帳號叫做ansible,然後你又新增了ansible這個帳號
只要單純的檢查return code,就可以確認帳號有沒有建好
一些檢查工作就讓系統自己去處理即可
如果要做到更靈活應用,那麼getopt是一個不可或缺的功能

function範例
function get_input() {
local q=$1
local v=$2
local answer=""
read -p "${q}" -e -i ${v} answer
[[ ${#answer} -eq 0 ]] && answer=$v
echo $answer
}

gyn=$(get_input "Do you want to change user ID for ${u} (y/n)?" "y")
如果你if裡面要包的東西很少,可以考慮一行式判斷
[[ $gyn == n ]] && echo "Ok, nothing to change"

PASSWD=$(get_input "Please enter the password for ${u}" $PASSWD)
舊 2021-09-23, 12:53 AM #8
回應時引用此文章
NTC_TW_IT離線中