gpt4 book ai didi

arrays - shell中输入的数字

转载 作者:太空宇宙 更新时间:2023-11-04 13:03:25 27 4
gpt4 key购买 nike

我想从用户“last”获取输入(数字)。之后我将使用数字进行评估。但是我的程序不能正常工作。这是我的代码:

echo "Enter numbers until -last- "
while read line
do
array=("${array[@]}" $line)
if [ "$array[-1]" != "last" ]
then
break
fi
done
......
.....
echo "average numbers of this blablabla " #this part is correct

当我使用空格按钮但我必须使用回车按钮时它工作正常。而且它不接受“最后”输入。

我该如何实现?

最佳答案

此循环使用您输入的行填充 inputArray(不检查它们实际上是数字)直到您输入仅包含 last 的行:

inputArray=()
echo "Enter numbers until -last- "
while read line
do
if [ "$line" = "last" ]
then break
fi
inputArray+=("$line")
done
echo "${inputArray[@]}"

你可以从那里拿走它。请注意,在您知道它不是last 之前,该条目不会添加到数组中。

有些人会坚持认为您应该使用read -r 而不仅仅是read;一旦您知道自己在冒什么风险,请随意忽略它们(请参阅 Bash 手册中的 read)。

关于arrays - shell中输入的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33321619/

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