Shell 速查手册
Bash 脚本基础
记录编写脚本时的一些信息
1. Bash 脚本定义变量
三种变量类型
局部变量:局部变量在脚本或命令中定义,仅在当前 shell 实例中有效,其他 shell 启动的程序不能访问局部变量;
环境变量: 所有的程序,包括 shell 启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候 shell 脚本也可以定义环境变量;
shell 变量:shell 变量是由 shell 程序设置的特殊变量。shell 变量中有一部分是环境变量,有一部分是局部变量。
定义和使用变量
定义变量: name=value,需要注意,等号两侧不能有空格
使用变量:echo $name 或者 echo ${name}
定义局部变量: local name="test"
定义只读变量: readonly name
删除变量:unset name
Bash 字符串
单引号:任何字符都会原样输出,里面的字符串变量是无效的,单引号字符串中不能出现单独一个的单引号,但可以成对出现,作为字符串拼接使用;
双引号:可以有变量并且可以出现转义字符
2. Bash 脚本传递参数
Bash 中的参数按照数字顺序定义
Bash 脚本内获取参数的格式为: $n
几个特殊参数
$0 : 文件名
$# : 传递到脚本参数的个数
$* : 以单个字符串显示所有向脚本传递的参数
数组
定义: myArr = (value0,value1,value2)
使用数组: ${数组名[下标]}
获取数组所有元素: ${my_array[*]} 或者 ${my_array[@]}可以获得数组的所有元素
获取数组长度: ${#array_name[@]} 或者 ${#array_name[*]}
运算符
运算符 说明
+ 加法
- 减法
* 乘法
/ 除法
% 取余
= 赋值
== 相等。用于比较两个数字,相同则返回 true。
!= 不相等。用于比较两个数字,不相同则返回 true。
评论