驗證輸入值 : 只能為英數字
#/bin/bash
#能使用大小寫英文字母及數字
#sed -e 's/[^[:alnum:]]//g'
#可以大寫字母,並允許空白、逗號和小數點
#sed 's/[^[:upper:] ,.]//g'
validAlphaNum()
{
#驗證參數:如果參數是由大寫、小寫或數字組成,就回傳0,否則回傳1
#先移除所有不符合的字元
valischars="$(echo $1 | sed 's/[^[:upper:] ,.]//g')"
if [ "$valischars" = "$1" ]; then
return 0
else
return 1
fi
}
/bin/echo -n "請輸入資料 : "
read input
#針對輸入內容進行驗證
if ! validAlphaNum "${input}" ; then
echo "只能使用大小寫英文字母及數字。" >&2
exit 1
else
echo "以輸入有效資料。"
fi
exit 0
運行結果: