sed从字符串中提取版本号(仅限版本,不带其他数字)

oct*_*pus 3 regex bash shell sed

我想实现与sed中解释的相同:从字符串中提取版本号,但只考虑第一个数字序列甚至更安全,告诉sed只保留命令名后面的数字序列,省略休息.

I have: Chromium 12.0.742.112 Ubuntu 11.04

I want: 12.0.742.112

Instead of: 12.0.742.11211.04

我现在知道使用head或tail进行排序可以显示最大/最小数字,但是如何告诉sed只考虑第一个序列?

编辑:我忘了提到我正在使用bash.

Bet*_*eta 15

第一个号码?怎么样:

sed 's/[^0-9.]*\([0-9.]*\).*/\1/'
Run Code Online (Sandbox Code Playgroud)