2.关系运算 - wolai 笔记
关系运算符只支持数字,不支持字符串,除非字符串的值是数字。 下表列出了常用的关系运算符,假定变量 a 为 10,变量 b 为 20:
运算符单词说明举例
-eqequal检测两个数是否相等,相等返回 true。[ $a -eq $b ] 返回 false。
-nenot equal检测两个数是否相等,不相等返回 true。[ $a -ne $b ] 返回 true。
-gtgreat than检测左边的数是否大于右边的,如果是,则返回 true。[ $a -gt $b ] 返回 false。
-ltless than检测左边的数是否小于右边的,如果是,则返回 true。[ $a -lt $b ] 返回 true。
-gegreat than or equal检测左边的数是否大于等于右边的,如果是,则返回 true。[ $a -ge $b ] 返回 false。
-leless than or equal检测左边的数是否小于等于右边的,如果是,则返回 true。[ $a -le $b ] 返回 true。
$ [ 10 -gt 10 ] 
$ echo $? 
1

$ [ 10 -eq 10 ] 
$ echo $? 
0
案例:判断当前输入的用户是否存在。如果存在则提示“用户存在”否则提示“用户不存在”。
如果要在shell脚本使用linux命令,可以使用$()包裹命令
例如:disk_size=$(df -h | awk ‘NR==2 {print $5}’)
$ vim demo.sh 
#!/bin/bash
#接受用户的输入
read -p '请输入需要查询的用户名:' username

#获取指定用户名在passwd文件中出现的次数
count=$(cat /etc/passwd | grep $username | wc -l)
#count=`cat /etc/passwd | grep $username | wc -l`

#判断出现的次数,如果次数=0则用户不存在,反之存在
if [  $count == 0 ]
then 
		echo '用户不存在'
	else 
		echo '用户存在'
fi

Comment
avatar
Dongnian
A salty fish swimming in the sea of deep learning!
Follow Me
Announcement
Welcome to My Personal Blog!
If Not, Please Visit Gitee Mirror.