shell编程之运算符

shell编程之运算符

shell变量的缺点  
	弱类型
	默认字符串型

1、declare命令

  • 删除变量
unset y
#删除变量y
  • 声明变量
declare声明变量类型
	declare [+/-] [选项] 变量名
	- : 给变量设定类型属性
	+ : 取消变量的类型属性
	例如:
	-a : 将变量声明为数组型
	-i : 将变量声明为整数型(integer)
	-x : 将变量声明为环境变量
	-r : 将变量声明为只读变量
	-p : 显示指定变量的被声明的类型
aa=11
bb=22
declare -i cc=$aa+$bb #声明变量cc的类型是整数型,它的值是aa和bb的和
33
  • 声明数组变量

Shell编程是弱类型语言,只要明确使用[]加上下标,即为数组,了解数组概念即可,在一个变量里保存不同的值,每一个值用一个下标表示。

#!/bin/bash
#定义数组
movie[0]=zp
movie[1]=tp
declare -a movie[2]=live
#查看数组
echo ${movie}
echo ${movie[2]}
echo ${movie[*]}
zp
live
zp tp live

*声明环境变量

export调用declare命令

aa=11
declare -x aa
或者
aa=11
export aa

*声明变量只读属性

declare -r test
#给test赋予只读属性,但是请注意只读属性会让变量不能修改不能删除,甚至不能取消只读属性

2、数值运算的方法

*expr或let数值运算工具

#给变量aa和变量bb赋值
aa=11
bb=22
dd=$(expr $aa + $bb)
#dd的值是aa和bb的和。注意,"+"号左右两侧必须有空格

*" ( ( 运 算 式 ) ) " 或 " ((运算式))" 或 " (())""[运算式]"

aa=11
bb=22
ff=$[$aa+$bb]
gg=$(($aa+$bb))

gg=$(date) 注意,$()是执行系统命令并赋值
shell编程之运算符_第1张图片

3、变量测试

变量测试通用度不高,只针对shell语言生效,了解即可。
这种方式好处是代码精简,缺点是逻辑理解困难。

shell编程之运算符_第2张图片

你可能感兴趣的:(Shell,linux)