这是一个示例bash,您可以从两个方面看到:
1)首先

#!/bin/bash

number=0
echo "Your number is: $number"
IFS=' ' read -t 2 -p "Press space to add one to your number: " input

if [ "$input" -eq $IFS ]; then  #OR ==> if [ "$input" -eq ' ' ]; then
    let number=number+1
    echo $number
else
    echo wrong
fi

2)第二:
#!/bin/bash

number=0
echo "Your number is: $number"
read -t 2 -p "Press space to add one to your number: " input

case "$input" in
    *\ * )
        let number=$((number+1))
        echo $number
        ;;
    *)
        echo "no match"
        ;;
esac

现在的问题是:
有了这两种方法,如何检查输入参数是white space还是null
我想在bash中同时检查white spacenull
谢谢

最佳答案

你可以试试这样的方法:

#!/bin/bash

number=0
echo "Your number is: $number"
IFS= read -t 2 -p "Press space to add one to your number: " input
# Check for Space
if [[ $input =~ \ + ]]; then
    echo "space found"
    let number=number+1
    echo "$number"
# Check if input is NULL
elif [[ -z "$input" ]]; then
    echo "input is NULL"
fi

关于linux - 如何检查输入是否为空格并且为空?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21950315/

10-15 05:23
查看更多