Shell 变量的赋值与引用
- 变量用于存储数据
- 由字母、数字或下划线组成,并且只能以字母或下划线开头,大小写的意义是不同的
- 弱类型的语言,变量存储的一切值都是字符串。到那时必要的时候,是要是由数值构成的字符串,也可以对其执行数值操作
-
变量赋值的方式:
变量名=变量值
” = ” 两边不能有任何空格
当变量值中包含空格时,应为其加上引号
- Shell 变量不需要预先定义,而且可以引用未赋过值得变量
-
引用变量:
$变量名
$ str="Hello,world!"
$ echo $str
>>>Hello,world!
变量的赋值与引用
- 在字符串中可以引用变量,使其值成为本字符串的一部分
$ str='world!'
$ echo Hello, $str
>>>Hello,world!
- 在变量名后面紧跟一个由非空白字符开始的字符串时,应该用花括号 “ { } ” 将变量名括起来
$ position=/user/include/
$ cat ${position}termio.h
-
清除变量的值: unset
$ str=has_a_value
$ echo $str
>>>has_a_value
$ unset str
$ echo $str
-
得到变量的长度:${ #变量名 }
$ str="A 22 characters string"
$ echo length of $str is ${ #str }
>>>length of A 22 characters string is 22
命令替换
- 将一个或多个命令的执行结果赋值给变量
-
两种方式
1. 反引号
2. $(…)
#1.使用反引号
$ str='pwd;who'
$ echo $str
#2.使用 $(...)
$ position=$(pwd || who)
$ echo $position
变量属性声明
- 使用内部命令 declare 或 typeset 限定变量的属性
-
常用选项
-r 只读
-i 整数
-a 数组
-f 函数
-x 导出变量
$ declare -r SIZE=100
$ SIZE=20
>>>-bash: SIZE: readonly variable
$ n=20
$ n=n+30
$ echo $n
>>>n+30
$ decalre -i n
$ n=20
$ n=n+30
$ echo $n
>>>50
后续内容可看 Shell 编程专栏的其他文章哦
版权声明:本文为Renard_H原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。