分享一个Linux shell截取字符串的小技巧
假如有这样一个字符串:
> str="test.tar.gz"
- ${str%.*} 从右边开始删除str字符串,直到遇到第一个 . (. 也会删除)
> echo ${str%.*}
> test.tar
- ${str%%.*} 从右边开始删除str字符串,直到遇到最后一个 . (. 也会删除)
> echo ${str%%.*}
> test
- ${str#*.} 从左边开始删除str字符串,直到遇到第一个 . (. 也会删除)
> echo ${str#*.}
> tar.gz
- ${str##*.} 从左边开始删除str字符串,直到遇到最后一个 . (. 也会删除)
> echo ${str##*.}
> gz
注意 * 的位置哟
当然还有其他的方法, 比如说
cut
sed
之类的命令