你好,我正在做一个项目,我必须写一个bash脚本计算器,让你执行多个算术运算,也可以的权力。我已经做了基本的位,但已被告知,我必须使其非交互式,只是想知道我会怎么做?我的代码已提供如下。
clear
bash
while [ -z "$arg1" ]
do
read -p "Enter argument1: " arg1
done
while [ -z "$arg2" ]
do
read -p "Enter argument2: " arg2
done
echo "You've entered: arg1=$arg1 and arg2=$arg2"
let "addition=arg1+arg2"
let "subtraction=arg1-arg2"
let "multiplication=arg1*arg2"
let "division=arg1 / arg2"
let "power=arg1**arg2"
echo -e "results:\n"
echo "$arg1+$arg2=$addition"
echo "$arg1-$arg2=$subtraction"
echo "$arg1*arg2=$multiplication"
echo "$arg1/$arg2=$division"
echo "$arg1^$arg2=$power"
我想尝试使它,使用户不必键入2个数字,但我仍然是相当新的bash和脚本作为一个整体,所以我想知道如何做到这一点。
1条答案
按热度按时间llew8vvj1#
使用
getopts
来处理脚本的参数。Here is an example来自此站点。您可以将从第一行到echo "You've entered …"
的行替换为我链接到的其他答案中的修改代码。您可能需要阅读man bash
的PARAMETERS部分,特别是了解什么是特殊参数(*,@,#,?,-,$,!,和0)。如果您正在编写bash脚本,您应该知道这些冷字符。另一种选择是使用内置的
read
。我会使用getopts
。