version=`echo "${filename}" | sed -r "s/.*([0-9]+\.[0-9]+\.[0-9]+).*/\1/g"`
## -r 表示regex正则表达式
## s表示替换
## 最后的g表示global全部匹配
## .*表示匹配任意项
## 一个()表示放在\1中,\0表示整体,当有多个()
### 第一个括号放在\1中
### 第二个括号放在\2中
### 比如
echo "hdsad1.02.2.22" | sed -r "s/.*([0-9]+\.[0-9]+\.[0-9]+)(\.[0-9]+).*/\1/g"
# 输出: 1.02.2
echo "hdsad1.02.2.22" | sed -r "s/.*([0-9]+\.[0-9]+\.[0-9]+)(\.[0-9]+).*/\2/g"
# 输出: .22
shell获取文件版本号[\1的含义]
最新推荐文章于 2024-06-25 09:38:29 发布