$0: 当前脚本文件名
$n: 第n个参数
$#: 参数个数
$*: 整个参数数据形式传递所有参数
$@: 单个参数数据形式传递所有参数
$?: 获取上一个命令的退出状态(0/1)/获取函数返回值
${#string}: 显示字符串的长度
${string:start:length}: 从左边0开始计数到start,截取长度为length的字符串,若“:length”省略截取剩下的字符串
${string:0-start:length}: 从右边1开始计数到start,截取长度为length的字符串,若“:length”省略截取剩下的字符串
${string#*chars}: 截取第一个chars右边的所有字符
${string##*chars}: 截取最后一个chars右边的所有字符
${string%chars*}: 截取最后一个chars左边的所有字符
${string%%chars*}: 截取第一个chars左边的所有字符
${array_name[number]}: 数组array_name的第number个数(从0开始数)
${array_name[*]}、${array_name[@]}: 数据array_name的所有数据
array_new=(${array1[*]} ${array2[*]}): 合并array1和array2为array_new
array_new=(${array1[@]} ${array2[@]}): 合并array1和array2为array_new
unset array_new[number]: 删除array_new的第number个数据(从0开始数)
关联数组(下标是字符串的数组):
declare -A array_name
array_name["element1"]="content1"
array_name["element2"]="content2"
type COMMAND: 查找命令类型,内建命令或外部文件
alias new_name='command': alias化名,自定义命令别名
unalias new_name: 删除别名
echo: 输出字符串
read [-options] [variables]: 从键盘读取数据
exit: 退出当前进程
declare [options] [variables]: 设置变量属性
(()): 对整数进行数学运算
bc: 一款数学计算器,整数小数/不同进制
test: 检测某个条件是否成立
[ expression ]: 等价于test
[[]]]: test的升级版,检测某个条件是否成立
break n: 跳出n层循环,省略n表示跳出一个循环
continue n: 忽略本次i循环剩余代码直接进入下一此循环,省略n表示对当前层次的循环语句有效