str -> shell 变量
${#str}
expr length $strexpr index $str [char]# 从 start 开始(包含)截取到结尾
${str:start}
# 从 start 开始(包含)截取 length 个字符
${str:start:length}
# 使用负数可以从尾部截取
expr substr $str [position] [length]# substring 可以是正则表达式
${str#substring}
# substring 可以是正则表达式
${str##substring}
# substring 可以是正则表达式
${str%substring}
# substring 可以是正则表达式
${str%%substring}
# 只替换第一个
${str/substring/replacement}
# 替换所有
${str//substring/replacement}
# 从左侧匹配替换一个
${string/#substring/replacement}
# 从右侧匹配替换一个
${string/%substring/replacement}