我有一个名为 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