子串的变量扩展

${变量%模式} 将变量值的尾部与模式进行最小匹配,并将匹配到的部分删除

$ pathname="/usr/bin/local/bin"

$ echo ${pathname%bin*}

/usr/bin/local

${变量%%模式} 将变量值的尾部与模式进行最大匹配,并将匹配到的部分删除

$ pathname="/usr/bin/local/bin"

$ echo ${pathname%%bin*}

/usr

${变量#模式} 将变量值的头部与模式进行最小匹配,并将匹配到的部分删除

$ pathname=/home/lilliput/jake/.bashrc

echo ${pathname#/home}

/lilliput/jake/.bashrc

${变量##模式} 将变量值的头部与模式进行最大匹配,并将匹配到的部分删除

$ pathname=/home/lilliput/jake/.bashrc

echo ${pathname##*/}

.bashrc

${#变量} 替换为变量中的字符个数,如果是*或@,长度则是位置参量的个数

$name="Ebenezer Scrooge"

echo ${#name}

16

https://blog.csdn.net/songyuchaoshi/article/details/109471087

https://blog.51cto.com/u_10980859/5303750

posted @ 2023-04-18 20:17  Chuyio  阅读(23)  评论(0编辑  收藏  举报