linux - BASH 脚本 - 菜单不显示回声
问题描述
我对此非常陌生,但是谁能告诉我为什么当我运行它时,它没有显示我的回声?它接受我所有的输入,但是说当我做减法时它不显示 echo "$a - $b = $(($a-$b))" 如果我在每个案例之后都放一个 Exit 就可以了,但是我希望它在完成一个输入后继续运行。
#!/bin/bash
while true; do
clear
cat <<EOF
Please Select:
Option 1. Quit
Option 2. Display Options Again
Option 3. Subtraction
Option 4. Division
Option 5. Who am I?
EOF
read -p "Enter selection [1-5] > "
case "$REPLY" in
1)
break
;;
2)
;;
3)
read -p "Enter the First Number: " a
read -p "Enter the Second Number: " b
echo "$a - $b = $(($a-$b))"
;;
4)
printf "Enter the First Number: "
read a
printf "Enter the Second Number: "
read b
echo "$a / $b = $(($a/$b))"
;;
5)
echo "My name is Michelle"
;;
*)
echo "Invalid entry."
;;
esac
done
echo "Program terminated."
任何帮助将不胜感激。
解决方案
这里的问题是循环中的第一个命令是clear
. 这会在显示后立即删除输出。
推荐阅读
- c# - RDotNet 数据框日期列转换为 numericvector
- ios - 将应用程序移至其他帐户后如何启用实时分析?
- ssms - 查询以选择销售额最高的产品
- python - 无法通过定义中的 imageTk 访问声明的图像
- jquery - 如何在asp.net核心项目中使用ajax填充下拉列表树嵌套数据?
- django - 获取模型类中“created_by”字段的当前用户
- sql - SQL - 选择多个/所有列但排除一个或两个特定列中的重复数据?
- docker - 如何获取要在应用程序内部使用的 kubernetes pod 或部署 IP
- angular - Angular 中的 Promise:直接返回时的无限调用
- javascript - Angular 下载大块