shell统计某个字符串最后一次出现的位置之前的所有字符串
Posted 雅冰石
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell统计某个字符串最后一次出现的位置之前的所有字符串相关的知识,希望对你有一定的参考价值。
需求:
我想统计某个ip所属网段。
示例:
有一台服务器ip是192.168.144.249,我想统计到192.168.144这个网段。
方法一:
strToCheck='192.168.144.251'
letpos=`echo "$strToCheck" | cut -d '.' -f 1,2,3`
echo $letpos
结果为192.168.144
方法二较复杂些:
#先统计最后一个.在哪个位置
strToCheck='192.168.144.249'
charToSearch='.'
letpos=`echo "$strToCheck" | awk -F ''$charToSearch'' 'printf "%d", length($0)-length($NF)'`
#再统计该位置前面的字符串
echo $strToCheck:0:$letpos
结果192.168.144.
--本篇文章参考自:Shell脚本实现查找字符串中某字符最后出现的位置 / 张生荣
以上是关于shell统计某个字符串最后一次出现的位置之前的所有字符串的主要内容,如果未能解决你的问题,请参考以下文章