在Ubuntu Linux环境下,用vi编辑器编写一个Shell脚本,根据键盘可以循环输入学生成绩(百分制),并显示对应的成绩标准(及格和不及格),按“q”键退出,按其他键提示重新输入。
时间: 2024-12-20 13:29:52 浏览: 5
ubuntu下编程工具(shell脚本).pdf
要在Ubuntu Linux环境下使用vi编辑器编写这样一个简单的Shell脚本,你可以创建一个名为`scorescript.sh`的新文件,然后在vi编辑器中添加以下代码:
```bash
#!/bin/bash
while true; do
read -p "请输入学生的成绩(百分制): " score
if [[ $score =~ ^[0-9]{1,2}$ ]]; then
if (( score >= 60 )); then
echo "成绩${score}分,及格。"
else
echo "成绩${score}分,不及格。"
fi
else
echo "输入无效,请输入一个0-100之间的整数。"
fi
keypress=$(read -n 1 -s)
case $keypress in
q|Q) exit ;;
*) continue;;
esac
done
# 保存并退出vi编辑器
`:wq`
```
在这个脚本中,我们使用了一个无限循环,直到用户输入`q`退出。`read`命令用于接收用户的输入,`if`和`case`语句判断输入是否合法以及如何显示结果。如果输入的是数字且大于等于60,那么表示及格;否则表示不及格。如果输入不是数字或小于60,会提示重新输入。
当用户按下非`q`键时,脚本会继续循环,等待新的输入。当用户输入`q`或`Q`时,程序会通过`exit`命令终止。
保存脚本并使用`chmod +x scorescript.sh`为其添加执行权限后,即可运行它。
阅读全文