WRY

Where Are You?
You are on the brave land,
To experience, to remember...

0%

编程语言-Shell

脚本参数配置

1
2
3
4
5
6
7
#!/usr/bin/env bash
set -eux
set -o pipefail
# -u 表示遇到不存在的变量的时候,报错
# -e 只要脚本有错误,就终止执行
# -x 表示执行命令之前,先输出执行的命令
# -o pipefail 只要一个子命令失败,整个管道命令就失败,脚本就会终止执行

字符串操作

1
2
3
4
5
6
7
8
9
10
11
str="hi, shell!"
${#str} # 字符串的长度
${str :start :length} # 截取字符串,从start开始截取length的长度,(length省略,则截到尾)
echo ${str/h/H} # 替换字符串中的第一个h到H
echo ${str//h/H} # 替换字符串中所有的h到H
# 字符串判断
str1 = str2 # 当两个串有相同内容、长度时为真
str1 != str2 # 当串str1和str2不等时为真
-n str1 # 当串的长度大于0时为真(串非空)
-z str1 # 当串的长度为0时为真(空串)
str1 # 当串str1为非空时为真

数组

1
2
arr=(1 2 3)
${#carr[@]} # 数组的长度

文件系统

1
2
3
4
5
6
7
8
9
10
-d dir     # 判断文件夹存在
-r file # 用户可读为真
-w file # 用户可写为真
-x file # 用户可执行为真
-f file # 文件为正规文件为真
-d file # 文件为目录为真
-c file # 文件为字符特殊文件为真
-b file # 文件为块特殊文件为真
-s file # 文件大小非0时为真
-t file # 当文件描述符(默认为1)指定的设备为终端时为真

数值比较

1
2
3
4
5
6
-gt # 大于
-lt # 小于
-eq # 等于
-ne # 不等于
-ge # 大于等于
-le # 小于等于

优秀参考资源

优秀参考资源