拆分字符串变量并仅使用部分 bash

Jan*_*ndo 1 bash cut sed word-wrap

我有一个像下面这样的变量。

1.1.0.1580308800316

有没有办法将 1.1.0 作为单独的变量,将 1580308800316 作为单独的变量?喜欢var1=1.1.0 and var2=1580308800316

我尝试了可以​​找到的以下代码行。

echo 1.1.0.1580308800316 | fold -w6

但这并没有给我带来我想要的结果。

``

Léa*_*ris 5

使用标准 POSIX shell 是可能的:

#!/usr/bin/env sh

version='1.1.0.1580308800316'

var1="${version%.*}"
var2="${version##*.}"

printf 'Version: %s\n' "$version"
printf 'Var1: %s\n' "$var1"
printf 'Var2: %s\n' "$var2"
Run Code Online (Sandbox Code Playgroud)

输出:

Version: 1.1.0.1580308800316
Var1: 1.1.0
Var2: 1580308800316
Run Code Online (Sandbox Code Playgroud)