Linux对变量的截取替换
Posted xiaochina
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux对变量的截取替换相关的知识,希望对你有一定的参考价值。
//对变量截取 ${variable} 对变量值的修正(增删数据),仅仅修改输出后的结果对源值,并不做修改 #变数后对接字符 # ## //截取从前面开始 % %% //截取从后面开始 / // //替换 [[email protected]-test ~]# vbird="/home/vbird/testing/testing.x.sh" [[email protected]-test ~]# [[email protected]-test ~]#echo $vbird /home/vbird/testing/testing.x.sh #{variable#} //#从前面开始截取 #{variable##}变数名称后面两个##表示在 ##后面的字串取最长那一段;仅有一个# 表示取最小的那一段 [[email protected]-test ~]#echo ${vbird##/*/} //删除/*/中间的所有数据包括// ##全部删除 testing.x.sh [[email protected]-test ~]#echo ${vbird#/*/} //仅仅删除第一次匹配的 #删除第一次匹配的 vbird/testing/testing.x.sh #{variable%} //%从后面开始截取 #{variable%%}变数名称后面两个%%表示在 %%前面的字串取最长那一段;仅有一个# 表示取最小的那一段 [[email protected] ~]#echo $vbird /home/vbird/testing/testing.x.sh [[email protected] ~]#echo ${vbird%%/*} //从后面开始 * -->/ 最大匹配删除,因此给删完了 [[email protected] ~]#echo ${vbird%/*} //最短删除 /testing.x.sh /home/vbird/testing [[email protected] ~]#echo ${vbird%/*/} //最后一个字符开始/而真实的是h /home/vbird/testing/testing.x.sh [[email protected]-test ~]#echo ${vbird%/*h} //最短删除后端h开头 /home/vbird/testing [[email protected] ~]# [[email protected] ~]# [[email protected] ~]#echo ${vbird%%/*h} //全量删除,结尾--开头 [[email protected] ~]# [[email protected] ~]#echo ${vbird%%/*/} //为匹配到,因此未能删除 /home/vbird/testing/testing.x.sh #变量截取替换字符 // / [[email protected] ~]#echo ${vbird} /home/vbird/testing/testing.x.sh [[email protected]-test ~]# [[email protected]-test ~]# [[email protected]-test ~]#echo ${vbird/testing/TEST} // /最前面匹配的替换 /home/vbird/TEST/testing.x.sh [[email protected]-test ~]# [[email protected]-test ~]#echo ${vbird//testing/TEST} // //全局匹配替换 /home/vbird/TEST/TEST.x.sh
以上是关于Linux对变量的截取替换的主要内容,如果未能解决你的问题,请参考以下文章