shell中多种引号的区别:
双引号" ":允许扩展,允许以$引用其他变量 单引号' ':禁用扩展,即便$也视为普通字符 反引号 ``: 将命令的执行输出作为变量值,$()与反引号等效
read命令使用
read从键盘读入变量值完成赋值,如下所示: 格式: read [ -p "提示信息" ] 变量名 -P可选,-t指定超时秒数,-s设置是否在终端显示输入的内容'
$[]算式替换
使用$[]或$(())表达式 格式:$[整数1 运算符 整数2.. ..] 计算结果替换表达式本身,可结合echo命令输出
常用表达式
简写表达式 | 完整表达式 |
i++ | i=i+1 |
i-- | i=i-1 |
i+=2 | i=i+2 |
i-=2 | i=i-2 |
i*=2 | i=i*2 |
i/=2 | i=i/2 |
i%=2 | i=i%2 |
echo回显
-n选项:不换行 -e选项:支持扩展属性
test命令
字符判断 -z == != 整数数值判断 -eq -ne -gt -ge -lt -le 文件与目录判断 -e -f -d -r -w -x
参数 | 说明 |
= | 等于则为真 |
!= | 不相等则为真 |
-z 字符串 | 字符串的长度为零则为真 |
-n 字符串 | 字符串的长度不为零则为真 |
-eq | 等于则为真 |
-ne | 不等于则为真 |
-gt | 大于则为真 |
-ge | 大于等于则为真 |
-lt | 小于则为真 |
-le | 小于等于则为真 |
-e 文件名 | 如果文件存在则为真 |
-r 文件名 | 如果文件存在且可读则为真 |
-w 文件名 | 如果文件存在且可写则为真 |
-x 文件名 | 如果文件存在且可执行则为真 |
-s 文件名 | 如果文件存在且至少有一个字符则为真 |
-d 文件名 | 如果文件存在且为目录则为真 |
-f 文件名 | 如果文件存在且为普通文件则为真 |
-c 文件名 | 如果文件存在且为字符型特殊文件则为真 |
-b 文件名 | 如果文件存在且为块特殊文件则为真 |
符号组合多个命令
使用控制符组合多个命令 ; && || ;无论前条件是否成立,都会运行后面的条件 && 前条件必须成立,才会运行后面的条件 || 只能运行条件1或条件2中的任意一个,如条件1成立,则不运行条件2