Bash语法
变量
-
变量设定:
varName=value
("="左右无空白字符)value的取值
类型 表示 字符串 -
指令 ` command
` or$(command)
变量 ${varName}
-
变量引用:
${varName}
-
变量销毁:
unset varName
判断式
- 中括号判断式
[ part 运算符 part ]
# 中括号内每个组件用空白字符分隔
# 变量用双引号,常量用单/双引号包括
中括号判断式常用运算符
| 运算符 | 说明 |
| :-: | :-: |
| `==` | 相等 |
| `!=` | 不相等 |
| `!` | 非关系 |
| `-a` | 与关系 |
| `-o` | 或关系 |
- test命令
流程控制
条件语句
-
if else语句
if 判断式;then part0; elif 判断式;then part1; else part2; fi
-
case语句
case ${varName} in "value0") part0 ;; "value1") part1 ;; *) part2 ;; esac
循环语句
-
入口循环语句while
while 判断式 do part done
-
出口循环语句until
until 判断式 do part done
-
for in语句
for varName in value0 value1 value2 do part done
-
for (( 初始化; 循环次数; 执行步阶 ))
for (( 初始化; 循环次数; 执行步阶 )) do part done
函数
-
定义
# 函数定义须放置在调用前 function funName(){ part }
-
调用
funName argumet argumet2 argumet3
字符串
-
字符串长度
${#string}
-
提取子字符串
${string:start:total}
数组
-
定义
arrayName=(value0 value1 value2)
or
arrayName[0]=value0 arrayName[1]=value1 arrayName[2]=value2
-
引用:
arrayName[position]