Linux 字符串截取,一般用在 shell 脚本中,本篇写几个简单的 demo
跟大家分享一下


首先,定义一个变量

demo=https://blog.csdn.net/

  • 1.使用 # 号截取,删除左边字符,保留右边字符
    echo ${demo#*//}
    其中,demo 是变量名,# 号是运算符,*// 表示从左边第一个 // 号及左边的所有字符,即:删除 http://
    1

  • 2.使用 ## 号截取,删除左边字符,保留右边字符
    echo ${demo##*/}
    注意:##*/ 表示从左边开始删除最后(最右边)一个/号及左边的所有字符,即:删除整个
    2

  • 3.使用 % 号截取,删除右边字符,保留左边字符
    echo ${demo%/*}
    注意:%/* 表示从右边开始,删除第一个 / 号及右边的字符

3

  • 4.使用 %% 号截取,删除右边字符,保留左边字符
    echo ${demo%%/*}
    注意:%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符
    4

  • 5.截取从左边第几个字符开始,及字符的个数
    string="linux shell is very interesting"
    echo ${string:0:${#string}-4}
    其中,0 表示从左边第一个字符开始
    5

  • 6.截取从左边第几个字符开始,一直到结束
    echo ${demo:6}
    其中,6 表示从左边第 7(6+1) 个字符开始,一直到结束
    6

  • 7.截取从右边第几个字符开始,及字符的个数
    echo ${demo:0-5:3}
    其中,0-5 表示从右边算起,第5个字符开始,3表示字符的个数
    7

  • 8.截取从右边第几个字符开始,一直到结束
    echo ${demo:0-6}
    其中,0-6 表示从右边第 6 个字符开始,一直到结束
    8

注意
左边的第一个字符是用 0 表示
右边的第一个字符是用 0-1 表示


小伙伴们,你学废了没?

我们下期见,拜拜!

Logo

更多推荐