变量取值处理
和 ## 用于去掉左边的部分,# 只去掉第一个匹配的部分,## 去掉最后一个匹配的部分
% 和 %% 用于去掉右边的部分,% 只去掉最后一个匹配的部分,%% 去掉第一个匹配的部分
${file#*/}:去掉变量 file 中第一个 / 及其左边的部分
- 结果:dir1/dir2/dir3/my.file.txt
${file##*/}:去掉变量 file 中最后一个 /` 及其左边的部分
- 结果:my.file.txt
${file#*.}:去掉变量 file 中第一个 . 及其左边的部分
- 结果:file.txt
${file##*.}:去掉变量 file 中最后一个 . 及其左边的部分
- 结果:txt
${file%/*}:去掉变量 file 中最后一个 / 及其右边的部分
- 结果:/dir1/dir2/dir3
${file%%/*}:去掉变量 file 中第一个 / 及其右边的部分
- 结果:(空值)
${file%.*}:去掉变量 file 中最后一个 . 及其右边的部分
- 结果:/dir1/dir2/dir3/my.file
${file%%.*}:去掉变量 file 中第一个 . 及其右边的部分
- 结果:/dir1/dir2/dir3/my