Shell——运算符

declare命令

declare声明变量类型

declare [+/-] [选项] 变量名
选项:
-:给变量设定类型属性
+:取消变量的类型属性
-a:将变量声明为数组型
-i:将变量声明为整数型
-x:将变量声明为环境变量
-r:将变量声明为只读变量(设置为只读之后无法修改,无法删除,无法取消只读)
-p:显示指定变量的被声明的类型

声明数组变量

# 定义数组
array[0]=z
declare -a array[1]=d
echo ${array} # 打印array[0]
echo ${array[1]} # 打印array[1]
echo ${array[*]} # 打印数组所有内容

声明环境变量

# export实际上就是declare -x
declare -x test =123

数值运算方法

aa=11
bb=22

方法一:声明类型

# 声明cc为整型
declare -i cc=$aa+$bb

方法二:expr

# 注意“+”左右两侧必须有空格,如果不含有空格会当做字符串处理
dd=$(expr $aa +$bb)    

方法三:$((运算式)) 或者 $[运算式]

ee=$(($aa+$bb))
ff=$[$aa+$bb]

运算符优先级

优先级数值越大优先级越高

优先级 运算符 说明
13 -,+ 单目负,单目正
12 !,~ 逻辑非,按位取反或补码
11 *,/,% 乘,除,取模
10 +,- 加,减
9 <<,>> 按位左移,按位右移
8 <+,>=,<,> 小于等于,大于等于,小于,大于
7 ==,!= 等于,不等于
6 & 按位与
5 ^ 按位异或
4 | 按位或
3 && 逻辑与
2 || 逻辑或
1 =,+=,-=,/=,%=,&=,^=,|=,<<=,>>= 赋值,运算且赋值

变量测试

变量测试
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试...
    孤月环舟阅读 2,463评论 0 0
  • Bash 支持很多运算符,包括算数运算符、关系运算符、布尔运算符、字符串运算符和文件测试运算符。 原生bash不支...
    Viking_Den阅读 2,875评论 0 2
  • 四则运算简单四则运算:awk、expr 注意 val=.. 中间不能有空格 $a + $b 中间有空格,否则会使...
    来去匆匆不过过客阅读 2,726评论 0 0
  • 基本运算符 和其他语言一样, Shell也支持多种运算符, 但是需要借助 expr 表达式计算工具才能完成计算, ...
    wenjieli阅读 1,535评论 0 0
  • 最近,全国各地都在降温,不少感冒的人都是自己去店里买药,但对感冒药并不是很了解。感冒虽然是小病,可一旦吃错药,感冒...
    汇爱居阅读 5,754评论 0 1

友情链接更多精彩内容