gpt4 book ai didi

linux - 编写脚本以获取用户输入并使用错误检查来测试是否输入了两个参数 : Linux

转载 作者:太空狗 更新时间:2023-10-29 12:40:24 24 4
gpt4 key购买 nike

我的 Linux 类(class)刚开始编写脚本,我在回答其中一个问题时遇到了麻烦。问题如下:使用脚本将两个数字作为参数并使用 bc 输出它们的和。

这是我的第一个脚本。要执行脚本,您需要执行 chmod +x filename

这是我目前所拥有的:

#!/bin/bash
read -p "Enter in a numeric value: " num1
read -p "Enter in a second numeric value: " num2
if [ $# -ne 2 ] ; then
echo "Enter in two numeric arguments"
else
echo "The sum of the entered values are: "
echo "$num1 + $num2"|bc
fi

我总是遇到错误。当我输入两个值时,它显示“输入两个数字参数”。它不应该那样做,因为如果我输入两个值,则 if 语句将计算为 false 并转到 else 语句。我的逻辑是错误的还是我的处理方式有误?

最佳答案

您可以使用 while 循环和 break

n=0                                                                                                                                                      
ex=""
while [ 1 ]
do
read -p "Enter read in a numeric value" num
n=$(( n + 1))

if [[ $n -eq 2 ]]
then
ex=${ex}${num}
echo "Sum of the two values are"
echo ${ex} | bc
break

else
ex=$num" + "
fi
done

关于linux - 编写脚本以获取用户输入并使用错误检查来测试是否输入了两个参数 : Linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46937629/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com