从版本号中删除内部版本号:1.3.0.342 应变为 1.3.0

mle*_*les 1 bash grep sed

对于 Jenkins 构建脚本,我需要从版本中删除构建号。我需要结束MajorVersion.MinorVersion.BugfixVersion。这些数字不固定为一位数。如果它们已经具有三个版本号,则不会发生任何事情:

1.30.0.342 -> 1.30.0
100.3.0.32 -> 100.3.0
1.3.1234.3 -> 1.3.1234
1.3.0 -> 1.3.0
Run Code Online (Sandbox Code Playgroud)

我怎样才能用 grep / sed 正确地做到这一点?

我的输入来自变量

export VERSION="$(gulp config --silent --getWidgetAttr=version)"
Run Code Online (Sandbox Code Playgroud)

小智 5

如果您需要三个部分(MajorVersion.MinorVersion.BugfixVersion)

你可以用“cut”得到这个

echo "1.30.0.342" | cut -d '.' -f1-3
Run Code Online (Sandbox Code Playgroud)