• shell之变量字符串的操作


    shell之变量字符串的操作

    在shell使用中经常遇到要操作变量字符串的问题,下面介绍几种简单的方法:

    字符变量:a=123-456-789-123-123

    一、截取字符串

    1、使用cut命令来截取字符串

    格式:cut -d '分隔符' -f'显示字串'

      -d:指定分隔符

      -f:显示分割后的字串

    示例:

    echo $a | cut -d '-' -f2

     

    2、使用"#"截取字符串

    一个“#”号代表左边起第一个

    两个“##”号代表左边起最后一个

    示例:

    #删除左边起第一个'-'字符及其左边的所有字符
    echo ${a#*-}
    
    #删除左边起最后一个'-'字符及其左边的所有字符
    echo ${a##*-}

    3、使用“%”截取字符串

    一个“%”号代表右边起第一个

    两个“%”号代表右边起左后一个

    示例:

    #删除右边起第一个“-”及其右边的所有字符
    echo ${a%-*}
    
    #删除右边起最后一个“-”及其右边的所有字符
    echo ${a%%*-}

    4、使用冒号截取字符串

    格式:仿照列表的格式来截取索引位置的字符串

    示例:

    #截取从0到5的字符字串
    echo ${a:0:5}
    #截取从3到结尾的字符字串
    echo ${a:3}
    #截取最后的5个字符
    echo ${a:0-5}

    二、替换字符串

    1、将字符串中出现的第一个字符字串替换为另一个字串

    示例:

    #将字符串中的第一个出现的123字符子串替换成abc
    echo ${a/123/abc}

    2、将字符串中出现的某个字串全部替换为另一个字串

    示例:

    #将字符串中的123全部替换成abc
    echo ${a//123/abc}

    3、将开头处的字符串替换成另一个字串

    示例:

    #先判断是否以某个字符串开头,是,则将其替换成另一个子串
    echo ${a/#123/abc}

    4、将结尾处的字符串替换成另一个字串

    示例:

    #首先判断是否以某个字符串结尾,是,则将其替换成另一个子串
    echo ${a/%123/abc}

    总结:

    1、#代表左边第一个,%代表右边第一个

    2、##代表左边最后一个,%%代表右边最后一个

  • 相关阅读:
    Hive创建表格报Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException的错误
    Hive本地模式安装及遇到的问题和解决方案
    CentOS6 编译安装Mysql5.6.26
    数据结构全攻略--学好数据结构的必经之路
    JAVA项目打开出现红色感叹号!
    前端语言html
    1 利用Anaconda完美解决Python 2与python 3的共存问题
    0 Windows上安装Anaconda和python的教程详解
    回溯算法
    建立结构体
  • 原文地址:https://www.cnblogs.com/myeric/p/8600279.html
Copyright © 2020-2023  润新知