1

我只想知道如何读取字符串然后进行比较。如果是“加号”,则继续

#!/bin/bash 

echo -n Enter the First Number:
read num
echo -n Please type plus:
 read opr


if [ $num -eq 4 && "$opr"= plus ]; then

echo this is the right


fi
4

2 回答 2

4
#!/bin/bash 

read -p 'Enter the First Number: ' num
read -p 'Please type plus: ' opr

if [[ $num -eq 4 && $opr == 'plus' ]]; then
    echo 'this is the right'
fi

如果您使用的是 bash,那么我强烈建议您使用双括号。它们比单括号好得多;例如,它们更合理地处理未引用的变量,您可以&&在括号内使用。

如果你使用单括号,那么你应该这样写:

if [ "$num" -eq 4 ] && [ "$opr" = 'plus' ]; then
    echo 'this is the right'
fi
于 2013-03-06T19:59:31.137 回答
0
#!/bin/bash 

echo -n Enter the First Number:
read num
echo -n Please type plus:
 read opr


if [[ $num -eq 4 -a "$opr" == "plus" ]]; then
#               ^            ^    ^
# Implies logical AND        Use quotes for string
    echo this is the right
fi
于 2013-03-06T19:59:21.817 回答