Linux第五次打卡(补卡)
4.2.3判断用户的参数
运算符 作用
-d 文件是否为目录类型
-e 文件是否存在
-f 判断是否为一般文件
-r 判断当前用户是否有读权限
-w 判断当前用户是否有写入权限
-r 判断当前用户是否有执行权限
echo $?→→显示上一次命令执行的返回值(返回0成功 真 有意义 存在… 非0失败 假 无意义 不存在…)
eg: [root@localhost ~]# [ -e /etc/ ]
[root@localhost ~]# echo $?
0
“与”运算符–&&—前面命令成功 执行其后面的命令
eg: [root@localhost ~]# [ -e /etc/fstab ] && echo “okok”
okok
[root@localhost ~]# [ -d /etc/fstab ] && echo “okok”
[root@localhost ~]#
“或”运算符--||---前面命令失败 执行其后面的命令
eg: [root@localhost ~]# echo $USER
root
[root@localhost ~]# [ $USER = linuxprobe ] || echo “current_user”
current_user
“非”运算符--!---把判断结果取反(对变错 错变对)
eg: [root@localhost ~]# [ ! $USER = root ] || echo "current_user"
current_user
练习:
判断当前用户是否为非管理员用户
是 通过与运算符输出“user”; 否 通过非运算符输出“current_user is root”
[root@localhost ~]# [ ! $USER = root ] && echo “user” || echo “current_user is root”
current_user is root
可用整数比较运算符最好不要用:> <(和重定向有冲突)
用-eq(是否等于) -ne(是否不等于)
-gtÿ