1.变量定义
- 本地变量:用户私有变量,只有本用户可以使用,保存在家目录下的.bash_profile、.bashrc文件中。
- 全局变量:所有用户都可以使用,保存在/etc/profile、/etc/bashrc文件中。
- 用户自定义变量:用户自定义,比如脚本中的变量。
2.定义变量
如下:变量名大写。 字符串要用单引号或双引号引起来。
比如:
VAR1=1
AGE=18
NAME=’baism’
SORCE=88.8
3.读取变量内容
读取变量内容符:$
读取方法:$变量名
,比如echo $NAME
有以下方法:
- 取消变量 unset。
unset NAME
- 定义全局变量 export。
export NAME='zhansan'
readonly
可以将变量设定为只读变量。- 定义永久变量,要么本地变量和全局变量中使用export命令,写道配置文件中,并
source
该文件即可。
4. 数组
bash支持一维数组(不支持多维数组),并且没有限定数组的大小。
bash下的数组:下标从0开始,支持索引。
数组定义:array_name=(value0 value1 value2 value3)
或者:
array_name[0]=value0
array_name[1]=value1
array_name[n]=valuen
数组读取:
echo ${array_name[@]}
,orecho ${array_name[*]}
读取数组中所有元素。echo ${array_name[0}
读取数组中第0个值。echo ${array_name[@]:1
读取数组,从下标1开始。echo ${array_name[@]:1:2
读取数组,从下标1开始,步进长度是2。echo ${#array_name[@]}
统计数组元素的个数。echo ${#array_name[0]}
计算下标为0的元素的长度。echo ${!array_name[@]}
获取数组元素的索引。
5. 关联数组
关联数组可以允许用户自定义数组的索引,下标可以是任意自定义类型,这个是字典。
申明:declare -A ass_array1
赋值:ass_array1[index1]='pear'
ass_array1[index2]='tom'
或者:ass_array2=([index1]='tom' [index2]='jack' )