shell脚本输入一个十以内数字不对显示重新输入
时间: 2023-10-24 09:09:02 浏览: 86
shell 输入和输出
可以用如下的脚本实现:
```
#!/bin/bash
echo "请输入一个十以内的数字:"
read num
while [[ ! $num =~ ^[0-9]$ ]]; do
echo "输入不合法,请重新输入:"
read num
done
echo "输入的数字为 $num"
```
在这个脚本中,首先输出提示信息让用户输入一个十以内的数字。然后使用 `read` 命令读取用户的输入,并使用正则表达式判断输入是否合法。如果输入不合法,则输出提示信息并继续循环读取,直到用户输入一个合法的数字。最后输出用户输入的数字。
这个脚本中的正则表达式 `^[0-9]$` 表示匹配一个只有一位数字的字符串,其中 `^` 和 `$` 表示字符串的开头和结尾,`[0-9]` 表示匹配一个数字。如果用户输入的字符串不满足这个正则表达式,则说明输入不合法。
阅读全文