【笔记】Shell字符串截取

前言

Shell字符串截取学习笔记

指定开始下标和截取长度

<start>:截取开始位置下标。如果为负数,则从后向前寻址
<length>:截取的长度。如果<start>为负数,则向前寻找字符串

1
2
3
string="file.tar.gz"

${string:<start>:<length>}

指定开始下标

  • 从开始位置截取到末尾

<start>:截取开始位置下标。如果为负数,则从后向前寻址

1
2
3
string="file.tar.gz"

${string:<start>}

截取某字符串第一次出现开始

  • 截取某字符串第一次出现开始,向右直到末尾的字符串
1
2
3
4
string="file.tar.gz"

${string#*.}
# tar.gz
  • 截取某字符串第一次出现开始,向左直到开始的字符串
1
2
3
4
string="file.tar.gz"

${string%*.}
# file.tar.gz

截取某字符串最后一次出现开始

  • 截取某字符串最后一次出现开始,向右直到末尾的字符串
1
2
3
4
string="file.tar.gz"

${string##*.}
# gz
  • 截取某字符串最后一次出现开始,向左直到开始的字符串
1
2
3
4
string="file.tar.gz"

${string%%*.}
# file.tar.gz

完成

参考文献

CSDN——bandaoyu