Bash提取三位数版本的第一个数字
我想提取数10从10.3.0用于Makefile添加特定CFLAGS
下面的代码只打印1030
echo "gcc.exe (Rev5, Built by MSYS2 project) 10.3.0"|sed -r 's/.* ([0-9])/1/g' | sed -r 's/.//g'
1030
如何获得 10
回答
一个简单的awk:
echo "gcc.exe (Rev5, Built by MSYS2 project) 10.3.0" | awk '{print int($NF)}'
10
或者,如果您必须sed仅使用:
echo "gcc.exe (Rev5, Built by MSYS2 project) 10.3.0" |
sed -E 's/.* ([0-9]+).*/1/'
10