一、shell脚本中基本变量的意义
变量说明:

二、shell语言中的条件判断
1、字符串判断
| 语句 | 含义 |
|---|
| str1 = str2 | 当两个串有相同内容、长度时为真 |
| str1 != str2 | 当串str1和str2不等时为真 |
| -n str1 | 当串的长度大于0时为真(串非空) |
| -z str1 | 当串的长度为0时为真(空串) |
| str1 | 当串str1为非空时为真 |
2、算术的判断
| 语句 | 含义 |
|---|
| int1 -eq int2 | 两数相等为真 |
| int1 -ne int2 | 两数不等为真 |
| int1 -gt int2 | int1大于int2为真 |
| int1 -ge int2 | int1大于等于int2为真 |
| int1 -lt int2 | int1小于int2为真 |
| int1 -le int2 | int1小于等于int2为真 |
3、文件的判断
| 语句 | 含义 |
|---|
| -r file | 用户可读时结果为真 |
| -w file | 用户可写时结果为真 |
| -x file | 用户可执行时结果为真 |
| -d file | 文件为目录时结果为真 |
| -f file | 文件为正规文件时结果为真 |
| -e file | 文件存在则结果为真,历史上-e选项不可移植,所以通常使用的是-f选项 |
| -c file | 文件为字符特殊文件时结果为真 |
| -b file | 文件为块特殊文件时结果为真 |
| -s file | 文件大小非0时结果为真 |
| -t file | 当文件描述符(默认为1)指定的设备为终端时结果为真 |
4、复杂逻辑判断
5、查看磁盘、文件大小
| 语句 | 含义 |
|---|
| df -h | 查看磁盘的占用情况 |
| du -sm ./* | 查看当前目录下文件大小,单位M |
6、其他
如果想让echo命令去掉每一行后面的换行符,可移植性最好的办法是使用printf命令而不是echo命令。有的shell用echo -e命令来完成这一任务,但不是所有的系统都支持该命令。bash使用echo -n命令来去除换行符。