shell操作字符串

Linux 中操作字符串,也是一项必备的技能。 其中尤以截取字符串更加频繁,下面为大家介 绍 10 种方式,截取字符串
      1、 #截取,删除左边字符串(包括制定的分隔符),保留右边字符串
            预先定义一个变量: WEBSITE='http://hadoop/centos/huangbo.html'
           echo ${WEBSITE#*//}        结果: hadoop/centos/huangbo.html
      2、 ##截取,删除左边字符串( 包括指定的分隔符),保留右边字符串,和上边一个#不同的 是,它一直找到最后,而不是像一个#那样找到一个就满足条件退出了。
            echo ${WEBSITE##*//}     结果: huangbo.html
       3、 %截取,删除右边字符串(包括制定的分隔符),保留左边字符串
             echo ${WEBSITE%//*}     结果: http://hadoop//centos
        4、 %%截取,删除右边字符串( 包括指定的分隔符),保留左边字符串,和上边一个%不同 的是,它一直找到最前,而不是像一个%那样找到一个就满足条件退出了。

             echo ${WEBSITE%%//*}          结果: http:
        5、 从左边第几个字符开始,以及截取的字符的个数           echo ${WEBSITE:2:2}        结果: tp
        6、 从左边第几个字符开始,一直到结束            echo ${WEBSITE:2}         结果: tp://hadoop//centos//huangbo.html
        7、 从右边第几个字符开始,以及字符的个数        echo ${WEBSITE:0-4:2}       结果: ht
        8、 从右边第几个字符开始,一直到结束          echo ${WEBSITE:0-4}         结果: html
        9、 利用 awk 进行字符串截取      echo $WEBSITE | awk '{print substr($1,2,6)}'        结果: ttp://
        10、 利用 cut 进行字符串截取     echo $WEBSITE | cut -b 1-4     结果http
                                                    echo $WEBSITE | cut -c 1-4      结果http      
                                                    echo $WEBSITE | cut -b 1,4      结果 hp
                                                    echo $WEBSITE | cut -c 1,4      结果hp
三、Linux获取字符串长度     

     在此为大家提供五种方式获取某字符串的长度
     1、 使用 wc -L 命令
           echo ${WEBSITE} |wc -L         结果35
     2、 使用 expr 的方式去计算 
           expr length ${WEBSITE}         结果35
     3、 通过 awk + length 的方式获取字符串长度
           echo ${WEBSITE} | awk '{print length($0)}'    结果35
     4、 通过 awk 的方式计算以""分隔的字段个数
           echo ${WEBSITE} |awk -F "" '{print NF}'    结果35
     5、 通过#的方式获取字符串(最简单,最常用)
          echo ${#WEBSITE}        结果 35

原文地址:https://www.cnblogs.com/liwenzhen238/p/8604662.html