shell脚本查找字符在字符串中最后出现的位置

发布时间:2020-06-01编辑:脚本学堂
本文介绍下,在shell编程中,查找字符在字符串中最后出现位置的几种方法,有需要的朋友,参考下吧。

方法1:
 

复制代码 代码示例:

#!/bin/ksh
var="A12345A67890123A45"
tmp=$(echo $var | sed 's/(.*A)(.*)/1/')
echo ${#tmp}

$test.sh
16

方法2:
 

复制代码 代码示例:
linuxjishu/13830.html target=_blank class=infotextkey>awk 'BEGIN{match("x00x11xxa",/.*x/);print RLENGTH;}'

方法3:
rindex.sh代码:
 

复制代码 代码示例:

#!/bin/bash

strToCheck=$1;
charToSearch=$2;

let pos=`echo "$strToCheck" | awk -F ''$charToSearch'' '{printf "%d", length($0)-length($NF)}'`

echo "char $charToSearch lastpos is: $pos"

例子:
 

复制代码 代码示例:
[zeal]$ sh rindex.sh www.jb200.com.
char . lastpos is: 10

顺序查找,可以用:
 

复制代码 代码示例:
startpos=$(echo   $1|awk   '{print   index($1,"keyword")}')  
echo   $startpos