Shell中运算符有哪些
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,这篇文章给大家分享的是有关Shell中运算符有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。算数运算符运算符说明举例+加法`expr $a + $b`-减法`expr
千家信息网最后更新 2025年01月23日Shell中运算符有哪些
这篇文章给大家分享的是有关Shell中运算符有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
算数运算符
运算符 | 说明 | 举例 |
---|---|---|
+ | 加法 | `expr $a + $b` |
- | 减法 | `expr $a - $b` |
* | 乘法 | `expr $a \* $b` |
/ | 除法 | `expr $b / $a` |
% | 取余 | `expr $b % $a` |
= | 赋值 | a=$b 将把变量 b 的值赋给 a。 |
== | 相等。用于比较两个数字,相同则返回 true。 | [ $a == $b ] 返回 false。 |
!= | 不相等。用于比较两个数字,不相同则返回 true。 | [ $a != $b ] 返回 true |
示例:
#!/bin/bash#author:zrca=5b=10val=`expr ${a} + ${b}`echo "a + b : ${val}"val=`expr ${a} - ${b}`echo "a - b : ${val}"val=`expr ${a} \* ${b}`echo "a * b : ${val}"val=`expr ${a} / ${b}`echo "a / b : ${val}"#注意空格使用if [ $a == $b ];then echo " a = b "fiif [ $a != $b ];then echo " a != b "fi
关系运算符
关系运算符不支持字符串(字符串见后面),只支持数字 例:a=5 b=10
运算符 | 说明 | 举例 |
---|---|---|
-eq | 检测两个数是否相等,相等返回 true。 | [ $a -eq $b ] 返回 false。 |
-ne | 检测两个数是否不相等,不相等返回 true。 | [ $a -ne $b ] 返回 true。 |
-gt | 检测左边的数是否大于右边的,如果是,则返回 true。 | [ $a -gt $b ] 返回 false。 |
-lt | 检测左边的数是否小于右边的,如果是,则返回 true。 | [ $a -lt $b ] 返回 true。 |
-ge | 检测左边的数是否大于等于右边的,如果是,则返回 true。 | [ $a -ge $b ] 返回 false。 |
-le | 检测左边的数是否小于等于右边的,如果是,则返回 true。 | [ $a -le $b ] 返回 true。 |
示例:
#!/bin/bash#author:zrca=5b=10if [ $a -eq $b ];then echo " $a -eq $b : a 等于 b " else echo " $a -eq $b : a 不等于 b "fiif [ $a -ne $b ];then echo " $a -ne $b : a 不等于 b " else echo " $a -ne $b : a 等于 b "fi
布尔运算符
例:a=5 b=10
运算符 | 说明 | 举例 |
---|---|---|
! | 非运算,表达式为 true 则返回 false,否则返回 true。 | [ ! false ] 返回 true。 |
-o | 或运算,有一个表达式为 true 则返回 true。 | [ $a -lt 20 -o $b -gt 100 ] 返回 true。 |
-a | 与运算,两个表达式都为 true 才返回 true。 | [ $a -lt 20 -a $b -gt 100 ] 返回 false。 |
逻辑运算符
注意使用逻辑运算符需要多重使用[]符号 例:a=5 b=10
true and flase 返回 false
true and false 返回 true
运算符 | 说明 | 举例 |
---|---|---|
&& | 逻辑的 AND | [[ $a -lt 100 && $b -gt 100 ]] 返回 false |
|| | 逻辑的 OR | [[ $a -lt 100 || $b -gt 100 ]] 返回 true |
字符串运算符
下表列出了常用的字符串运算符,假定变量 a 为 "aaa",变量 b 为 "bbb":
运算符 | 说明 | 举例 |
---|---|---|
= | 检测两个字符串是否相等,相等返回 true。 | [ $a = $b ] 返回 false。 |
!= | 检测两个字符串是否相等,不相等返回 true。 | [ $a != $b ] 返回 true。 |
-z | 检测字符串长度是否为0,为0返回 true。 | [ -z $a ] 返回 false。 |
-n | 检测字符串长度是否为0,不为0返回 true。 | [ -n "$a" ] 返回 true。 |
$ | 检测字符串是否为空,不为空返回 true。 | [ $a ] 返回 true。 |
示例:
#!/bin/bash#author:zrca="aaa"b="bbb"if [ $a = $b ];then echo " $a = $b : a 等于 b " else echo " $a = $b : a 不等于 b "fiif [ $a != $b ];then echo " $a != $b : a 不等于 b " else echo " $a != $b : a 等于 b "fiif [ -z $b ];then echo "-z $b : 字符长度为0 " else echo "-z $b : 字符长度为${#b} "fiif [ -n $b ];then echo "-z $b : 字符长度不为0 " else echo "-z $b : 字符长度为${#b} "fiif [ $b ];then echo "$b : 字符串不为空 " else echo "$b : 字符串为空 "fi
文件运算符
操作符 | 说明 | 举例 |
---|---|---|
-b file | 检测文件是否是块设备文件,如果是,则返回 true。 | [ -b $file ] 返回 false。 |
-c file | 检测文件是否是字符设备文件,如果是,则返回 true。 | [ -c $file ] 返回 false。 |
-d file | 检测文件是否是目录,如果是,则返回 true。 | [ -d $file ] 返回 false。 |
-f file | 检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回 true。 | [ -f $file ] 返回 true。 |
-g file | 检测文件是否设置了 SGID 位,如果是,则返回 true。 | [ -g $file ] 返回 false。 |
-k file | 检测文件是否设置了粘着位(Sticky Bit),如果是,则返回 true。 | [ -k $file ] 返回 false。 |
-p file | 检测文件是否是有名管道,如果是,则返回 true。 | [ -p $file ] 返回 false。 |
-u file | 检测文件是否设置了 SUID 位,如果是,则返回 true。 | [ -u $file ] 返回 false。 |
-r file | 检测文件是否可读,如果是,则返回 true。 | [ -r $file ] 返回 true。 |
-w file | 检测文件是否可写,如果是,则返回 true。 | [ -w $file ] 返回 true。 |
-x file | 检测文件是否可执行,如果是,则返回 true。 | [ -x $file ] 返回 true。 |
-s file | 检测文件是否为空(文件大小是否大于0),不为空返回 true。 | [ -s $file ] 返回 true。 |
-e file | 检测文件(包括目录)是否存在,如果是,则返回 true。 | [ -e $file ] 返回 true。 |
感谢各位的阅读!关于"Shell中运算符有哪些"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
检测
文件
运算
字符
运算符
字符串
两个
长度
右边
逻辑
变量
数字
目录
示例
表达式
设备
算符
中运
相同
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
培训学校教育软件开发
五年级网络安全作文
社交软件开发哪找
普通电脑云服务器价格
大企业如何管理服务器申请
软件开发分析报告
淘宝购物车加减访问数据库吗
绝地求生蓝洞出租服务器
临安安卓软件开发
杭州通信网络技术信息推荐
天津电子软件开发诚信服务
福州市排水管线信息数据库
软件开发企业分为哪些部门
买个二手服务器做游戏主机
中国移动公司网络安全
数据库从入门到删裤
全椒机械软件开发技术怎么样
数据库ddl操作有哪些
下载用友数据库口令和密码怎么弄
遍历数据库
数据库的模型结构是
软件开发过程中失败的故事
网络安全书籍mobi
山东特色软件开发参考价
网络技术员的升职名称
草原数据库代码zylx
Excel 数据库 计数
贵州有哪些服务器云主机
机关网络安全制度防泄密
安卓游戏数据库