老男孩教育专注IT教育10余年,只培养IT技术精英

全国免费咨询电话(渠道合作):400-609-2893

Shell基本运算符的分类有哪些?老男孩Linux运维培训

老男孩IT教育

常见问题

2021年11月11日 18:26

shell是运维人员必须掌握的技能,在运维工作中有着非常重要的地位,那么Shell基本运算符的分类有哪些?具体内容请看下文:

  shell是运维人员必须掌握的技能,在运维工作中有着非常重要的地位,那么Shell基本运算符的分类有哪些?具体内容请看下文:

  shell和其他编程语言一样,支持多种运算符,包括:算数运算符、关系运算符、布尔运算符、字符串运算符、文件测试运算符。

Linux shell

  算数运算符

  +:加法

  -:减法

  *:乘法

  /:除法

  %:取余

  =:赋值

  ==:相等,用于比较两个数字,相同则返回true

  !=:不相等,用于比较两个数字,不相同则返回true

  关系运算符

  关系运算符只支持数字,不支持字符串,除非字符串的值是数字。常用的关系运算符如下:

  -eq:检测两个数是否相等,相等返回true

  -ne:检测两个数是否不相等,不相等返回true

  -gt:检测左边的数是否大于右边的,如果是,则返回true

  -lt:检测左边的数是否小于右边的,如果是,则返回true

  -ge:检测左边的数是否大于等于右边的,如果是,则返回true

  -le:检测左边的数是否小于等于右边的,如果是,则返回true

  布尔运算符

  !:非运算,表达式为true则返回false,否则返回true

  -o:或运算,有一个表达式为true则返回true

  -a:与运算,两个表达式都为true才返回true。

  字符串运算符

  =:检测两个字符串是否相等,相等返回true

  !=:检测两个字符串是否不相等,不相等返回true

  -z:检测字符串长度是否为0,为0返回true

  -n:检测字符串长度是否不为0,不为0返回true

  $:检测字符串是否为空,不为空返回true

  文件测试运算符

  文件测试运算符用于检测Unix文件的各种属性,属性检测描述如下:

  -b file:检测文件是否是块设备文件,如果是,则返回true

  -c file:检测文件是否是字符设备文件,如果是,则返回true

  -d file:检测文件是否是目录,如果是,则返回true

  -f file:检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回true

  -g file:检测文件是否设置了SGID位,如果是,则返回true

  -k file:检测文件是否设置了粘着位(Sticky Bit),如果是,则返回true

  -p file:检测文件是否是有名管道,如果是,则返回true

  -u file:检测文件是否设置了SUID位,如果是,则返回true

  -r file:检测文件是否可读,如果是,则返回true

  -w file:检测文件是否可写,如果是,则返回true

  -x file:检测文件是否可执行,如果是,则返回true

  -s file:检测文件是否为空(文件大小是否大于0),不为空返回true

  -e file:检测文件(包括目录)是否存在,如果是,则返回true

  其他检查符:

  -S: 判断某文件是否socket。

  -L: 检测文件是否存在并且是一个符号链接。

  老男孩教育10余年技术沉淀,课程内容多次更新迭代,更加注重学员的实践动手能力以及运维思维的形成,杜绝纸上谈兵,全企业真实案例结合理论授课,使学员更好的过渡到工作岗位,想深入的学习Linux云计算运维知识,可以关注下老男孩教育。更多Linux视频及课程,可咨询老男孩教育在线客服,申请免费试听视频及教学大纲。

  推荐阅读:

  【Linux培训】Linux用户信息查询及磁盘与文件系统管理命令!

  资深Linux管理员常用的3个好用的Cron命令示例!

  Linux有哪些好用的性能监控工具?Linux入门教程

本文经授权发布,不代表老男孩教育立场。如若转载请联系原作者。