linux - 使用 shell 脚本从字符串中提取版本号

标签 linux shell

我需要从以下字符串中提取版本号。

模式看起来像这样。

通过使用 shell 脚本

VAR1=1.1-g13ab57737123
Output 1.1

VAR1=1.2-g328891ahqq12
Output 1.2

VAR1=2.3-g123900a12328
Output 2.3


VAR2=abcd960_1.1-g13ab57737123
Output 1.1

最佳答案

这有效:

$ VAR1=1.1-g13ab57737123
$ echo $VAR1
1.1-g13ab57737123
$ echo $VAR1 | grep -o "[0-9]\.[0-9]"
1.1

或者如果您需要更长的数字:

$ VAR1=1.1234-g13ab57737123
$ echo $VAR1 | grep -o "[0-9]\+\.[0-9]\+"
1.1234

关于linux - 使用 shell 脚本从字符串中提取版本号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58832604/

相关文章:

java - Cassandra 2.0 及更高版本需要 Java 7u25 或更高版本,但我使用的是 8u60

linux - 在不同的列中写入变量?

linux - 如何使用带有模式的 bash 删除文件中的行 block 并将剩余的行保存在另一个文件中

shell - 可以将命令别名自动添加到DOS shell中吗?

linux - 如何在 Perl 中以 root 身份运行一个句子

linux - grep 返回错误结果

linux - Linux BASH 被发现后尝试启动文件

linux - 如何在 bash 的 while 循环中选择一个选项

Linux shell脚本日期算法

linux - linux内核模块防止文件系统数量增加