问个shell的问题啊 判断输入y或者n
发表于 : 2012-01-26 12:28
判断用户输入的是否是y或者n 我分别用test和[]来测试 为啥用test的时候会连后面的也输入出来
=======
#!/bin/bash
read -p "Plz enter y or n: " yn
test $yn="y" -o $yn="Y" && echo "yes"
test $yn="n" -o $yn="N" && echo "no"
"j4.sh" 5L, 120C written
root@bt:/test# ./j4.sh
Plz enter y or n: y
yes
no
======
但用[]的时候则不存在任何问题:
#!/bin/bash
read -p "Enter y or n:" yn
[ "$yn" == "y" -o "$yn" == "Y" ] && echo "yes"
[ "$yn" == "n" -o "$yn" == "N" ] && echo "no"
root@bt:/test# ./judge.sh
Enter y or n:y
yes
=======
#!/bin/bash
read -p "Plz enter y or n: " yn
test $yn="y" -o $yn="Y" && echo "yes"
test $yn="n" -o $yn="N" && echo "no"
"j4.sh" 5L, 120C written
root@bt:/test# ./j4.sh
Plz enter y or n: y
yes
no
======
但用[]的时候则不存在任何问题:
#!/bin/bash
read -p "Enter y or n:" yn
[ "$yn" == "y" -o "$yn" == "Y" ] && echo "yes"
[ "$yn" == "n" -o "$yn" == "N" ] && echo "no"
root@bt:/test# ./judge.sh
Enter y or n:y
yes