[英]test for an argument being a 5 digit integer
我想测试我的bash
脚本中的参数是否是一个5位整数。
if [ "$1" == [0-9][0-9][0-9][0-9][0-9] ]; then
echo "first arg is 5 digits"
else
echo "not 5 digits"
这对我不起作用,是否有更简单的方法,即使用expr
函数?
请参阅man bash
CONDITIONAL EXPRESSIONS
:
if [[ "$1" =~ ^[0-9]{5}$ ]]; then
echo "first arg is 5 digits"
else
echo "not 5 digits"
fi
测试此类表达式时,必须使用双括号。
case "$1" in
[0-9][0-9][0-9][0-9][0-9]) echo "first arg is 5 digits" ;;
*) echo "not 5 digits" ;;
esac
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.