23. 脚本:控制输入

a=""
b="chupeng"
[ -n "$a" -a "$a" = "$b" ] && echo yes|| echo no
[[ -n "$a" && "$a" = "$b" ]] && echo yes || echo no

3.只能输入1or2的脚本

vim and_or.sh
#!/bin/bash

read -p "pls input a char:" var1

[  "$var1" -eq "1"  ] && {
    echo $var1
    exit 0
}

[  "$var1" = "2"  ] && {
    echo $var1
    exit 0
}

[  "$var1" != "2" -a "$var1" != "1"  ] && {
    echo "you must input 1 or 2!"
    exit 1
}

4.安装lnmp/lamp脚本

#lamp.sh  lnmp.sh
echo "echo lamp is installed" >./lamp.sh
echo "echo lnmp is installed" > ./lnmp.sh
chmod +x ./*
vim lamp_lnmp.sh
#!/bin/bash
#判断脚本文件路径是否存在
path=/myscripts
[  ! -d "$path"  ] && mkdir $path -p
#提示信息
cat <<END
    1.[install lamp]
    2.[install lnmp]
    3.[exit]
    pls input the number you want:
END
#读取输入信息并判断
read num 
expr $num +1 &> /dev/null

[  $? -ne 0  ]  && {
    echo "the num you input must be {1|2|3}"
    exit 1
}
#选择1的情况
[  "$num" -eq "1" ] && {
    echo "start installing lamp..."
    sleep2
    [ -x "$path/lamp.sh" ] || {
        echo "the lamp.sh does not exist or can't be exec."
        exit 1
    }
    $path/lamp.sh
    exit $?
}
#选择2的情况
[  "$num" -eq "2"  ] && {
    echo "start installing lnmp..."
    sleep 2
    [  -x "$path/lnmp.sh"  ] || {
        echo "lnmp.sh is error..."
        exit 1
    }
    $path/lnmp.sh
    exit $?
}
#选择3
[ "$num" -eq 3 ] && {
    echo "bye..."
    exit 3
}
#限制用户必须输入1|2|3
[[ ! "$num" = ~ [1-3]  ]] && {
    echo "you must input num in {1|2|3}"
    exit 4
}

最后更新: 2022-02-19 13:59:07