编写shell程序,若输入参量之中有任何非数字字符存在,即提示输入错误 ,并退出程序
时间: 2024-05-12 20:21:05 浏览: 11
以下是一个简单的Shell程序,用于检查输入是否仅包含数字字符。
```bash
#!/bin/bash
# 判断输入是否仅包含数字字符
if [[ "$1" =~ ^[0-9]+$ ]]; then
echo "输入合法"
else
echo "输入错误,请输入数字字符"
exit 1
fi
```
在上面的代码中,使用了正则表达式 `^[0-9]+$` 来匹配输入值是否仅包含数字字符。如果输入值符合要求,则输出“输入合法”,否则输出“输入错误,请输入数字字符”并退出程序。
要运行此程序,可以将其保存为脚本文件(例如 `check_input.sh`),然后在终端中执行以下命令:
```bash
$ chmod +x check_input.sh
$ ./check_input.sh 1234
输入合法
$ ./check_input.sh ABCD
输入错误,请输入数字字符
```
相关问题
编写shell程序,输入多个参量,若输入参量之中有任何非数字字符存在,即提示输入错误 ,并退出程序
```shell
#!/bin/bash
# 判断输入是否为纯数字
function isnumber() {
local input=$1
if [[ $input =~ ^[0-9]+$ ]]; then
return 0
else
return 1
fi
}
# 读取参数并判断
for arg in "$@"; do
if ! isnumber $arg; then
echo "Error: please input pure number."
exit 1
fi
done
echo "All inputs are pure number."
```
使用方法:
```shell
./script.sh 123 456a 789
```
输出:
```
Error: please input pure number.
```
编写shell程序判断输入的消息是否为0~9数字
可以使用shell中的正则表达式来判断输入的消息是否为0~9数字。具体实现代码如下:
```
#!/bin/bash
read -p "请输入数字:" num
if [[ $num =~ ^[0-9]$ ]]; then
echo "输入的是0~9之间的数字"
else
echo "输入的不是0~9之间的数字"
fi
```
解释:
- `read -p "请输入数字:" num`:读取用户输入的数字,并将其保存在`num`变量中。
- `if [[ $num =~ ^[0-9]$ ]]; then`:使用正则表达式判断输入的数字是否为0~9之间的数字。
- `^`表示开头,`$`表示结尾,`[0-9]`表示0~9之间的数字。
- `echo "输入的是0~9之间的数字"`:如果输入的是0~9之间的数字,则输出提示信息。
- `echo "输入的不是0~9之间的数字"`:如果输入的不是0~9之间的数字,则输出提示信息。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)