变量替换**
语法 ${变量#替换规则} :从变量头开始匹配,将符合匹配格式最短的数据进行删除${变量##替换规则} :从变量头开始匹配,将符合匹配格式最长的数据进行删除${变量%替换规则} :从变量尾开始匹配,将符合匹配格式最短的数据进行删除${变量%%替换规则} :从变量尾开始匹配,将符合匹配格式最长的数据进行删除${变量/旧字符串/新字符串} : 替换变量里的旧字符串为新字符串,只替换第一个匹配到的字符串${变量//旧字符串/新字符串} : 替换变量里的旧字符串为新字符串,替换所有匹配到的字符串
例子
$ text="I love you,do you love me"$ echo ${text#*ov}e you,do you love me$ echo ${text##*ov}e me$ echo ${text%ov*}I love you,do you l$ echo ${text%%ov*}I l$ echo $PATH/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin:/usr/local/opt/maven@3.3/bin$ echo ${PATH/bin/BIN}/usr/local/BIN:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin:/usr/local/opt/maven@3.3/bin$ echo ${PATH//bin/BIN}/usr/local/BIN:/usr/BIN:/BIN:/usr/sBIN:/sBIN:/Applications/VMware Fusion.app/Contents/Public:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/BIN:/usr/local/opt/maven@3.3/BIN
