可能重复:
Unix 基本验证
嗨,我对 Unix 很陌生,我试图让我的程序将输入的数字总和相加,它有一个验证器,可以在输入字符时告诉用户。
例如,这就是我想要它做的。
add2 4 -3 十二九 抱歉,“十二”不是数字
这是我当前的代码有人可以告诉我我做错了什么吗?
#!/bin/bash
sum=0
for numbers in $@
if ![["$numbers" =~ ^[0-9]+$ ]]
then
exec >&2; echo "error: numbers" exit 1
fi
do
sum=$((sum + numbers))
done
echo "$sum"