if判断语句1:

  #!/bin/bash
   read -p "please input a number: " n
   m=`echo $n|sed 's/[0-9]//g'`
   if [ -z $m ]
   then
       echo $n
 else
 echo "please input valid number."
  fi

if判断语句2:

  1 #!/bin/bash
  2 read -p "please input a number: " n
  3 m=`echo $n|sed 's/[0-9]//g'`
  4 if [ -n "$m" ]
  5 then
  6      echo "please input valid number."

  7 else
  8   echo $n
  9 fi

注意方括号边上有空格。
[ -z $m ] 判断m是否不为空,如果为空,则该条件不成立
[ -n "$m" ] 注意要有双引号,否则不管用,如果为空,条件成立;-n 就是 not null ,不为空。

read 命令用于和用户交互,它把用户输入的自护传作为变量值

-lt (小于) -gt大于 -le小于或等于  -ge大于或等于  -eq等于  -ne不等于

表示判断用法:

1、== 后面跟字母或数字

2、一般用0或1表示判断条件是否成立


2、cat /etc/passwd > /dev/null 2>&1

> 表示正确输出
2> 表示错误输出
&1 表示前面 > 后面的文件。
比如: cat /etc/passwd > /dev/null 2>&1
这样会把正确和错误的日志全部输入到/dev/null


3、if [ $a -gt 10 -o $a -lt 5 ]

-o是or: 表示或者  等于||

4、if [ $a -gt 100 -a $a -lt 1000 ]; then ...; fi

-a是and:表示而且得意思    等于&&

5、grep -q不输出匹配结果

if grep -q '^snake1:' /etc/passwd;then echo "snake exist.";fi

#标示红色作为条件判断,写成一条语句要用分号;作为分隔符