如何从68
中提取v1+r0.68
?
答案 0 :(得分:4)
使用awk,返回最后一个'。'
之后的所有内容echo "v1+r0.68" | awk -F. '{print $NF}'
答案 1 :(得分:1)
使用sed获取最后一个点后面的数字:
echo 'v1+r0.68' | sed 's/.*[.]\([0-9][0-9]*\)$/\1/'
答案 2 :(得分:1)
grep擅长提取东西:
kent$ echo " v1+r0.68"|grep -oE "[0-9]+$"
68
答案 3 :(得分:1)
使用grep
匹配行尾的数字字符串:
$ echo 'v1+r0.68' | grep -Eo '[0-9]+$'
68
或匹配.
$ echo 'v1+r0.68' | grep -Po '(?<=\.)\d+'
68
使用.
awk
之后的所有内容
echo "v1+r0.68" | awk -F. '{print $NF}'
68
使用.
替换sed
之前的所有内容:
echo "v1+r0.68" | sed 's/.*\.//'
68
答案 4 :(得分:0)
输入man grep
你会看到
...
-o, --only-matching
Show only the part of a matching line that matches PATTERN.
然后输入echo 'v1+r0.68' | grep -o '68'
如果你想要任何特殊的地方:
echo 'v1+r0.68' | grep -o '68' > anyWhereSpecial.file_ending