shell的变量
变量含义
学生时代所学的数学方程式,如x=1,y=2,那会称之为x,y是未知数
对于计算机角度,x=1,y=2等于定义了两个变量,名字分别是x,y,且赋值了1和2
变量是暂时存储数据的地方,变量临时存储在内存中,当你更新了一个会话或重启、关机了,变量就会消失
变量是一种数据标记 (房间号,标记了客人所在的位置),数据存储在内容空间,通过调用正确的变量名字,即可取出对应的值。
变量的三元素是 变量名称 变量类型 变量值
shell变量
- 变量定义与赋值,注意变量与值之间不得有空格
name="超哥" #正确写法
name = "超哥" #错误写法
变量名
变量类型,bash默认把所有变量都认为是字符串
bash变量是弱类型,无需事先声明类型,是将声明和赋值同时进行
- 变量替换、引用
[root@chaogelinux ~]#name="超哥带你学bash"
[root@chaogelinux ~]#echo ${name} #完整写法
超哥带你学bash
[root@chaogelinux ~]#echo $name #简略写法,可以省略花括号
超哥带你学bash
- 变量名规则
- 名称定义要做到见名知意,切按照规则来,切不得引用保留关键字(help检查保留字)
- 只能包含数字、字母、下划线
- 不能以数字开头不能用标点符号
- 变量名严格区分大小写
有效的变量名:
NAME_CHAOGE
chaoge
chaoge1
chaogE1
Chao2_ge
无效的变量名:
?chaoge
chao*ge
chao+ge
- 变量的作用域
- 本地变量,只针对当前的shell进程
使用命令pstree检查进程树