我有一個名為 bash 的函數,numeric
它返回1
or 0
。
numeric ()
{
# compute k either 1 or 0
echo "$k"
}
如何在條件語句中使用此函數來檢查變數是否var
為數字?
答案1
請記住,在 shell 條件表達式的上下文中,返回值 表示0
“成功”或“真”,非零值表示“失敗”或“假”,因此我建議調整該函數,使其返回0
if參數是一個數值。
假設「條件語句」是一個if
構造,則以下內容將起作用:
if numeric "$var"
then
# Code if $var is numeric
else
echo "$var is not numeric"
fi
答案2
使用返回
numeric ()
{
# compute k either 1 or 0 || return 1
echo "$k"
return 0
}
numeric || exit 1