Bash Read命令更改存储的数据类型



我确实试着在网上找到了答案。我找不到内置的命令来检查读取命令输入的数据类型。

这是下面的脚本,我正在noobie创建下面。由于某种原因,当我输入int==1时,比较不起作用。

我试着把";1〃;vs 1,但两者都不会导致True,并最终执行else命令?

echo "1. Start Session"
echo "2. Entry Here"
echo "3. Entry here"
read option1
echo "you selected" $option1
if [ $option1 == "1" ]
then    
echo "aaaaaaaaaah!!"
else
echo "nooooooooo!"
fi

为什么我得到";noooooo"以及我如何将其更改为";啊啊啊啊">

提前感谢!!

对于数值比较,将==更改为-eq

E.g

echo "1. Start Session"
echo "2. Entry Here"
echo "3. Entry here"
read option1
echo "you selected $option1"
if [ "$option1" -eq 1 ]
then    
echo "aaaaaaaaaah!!"
else
echo "nooooooooo!"
fi

您的问题在这里得到了回答:

外壳等式运算符(=,==,-eq(

最新更新