zoukankan      html  css  js  c++  java
  • shell中取字符串子串的几种方式 截取substr

    shell中取字符串子串的几种方式

    echo "123456789" | awk '{print substr($0,5,2)}'

    截取

    1)awk中函数substr
    substr(源字符串,开始索引,长度)   开始索引以0开始
    示例:
    awk '{$a=substr($0,0,2);print $a;}' filename
    假设文件中为只有一行为abcdefg,则返回结果为ab


    (2)expr substr 
    expr substr 字符串 开始索引 长度   开始索引以1开始
    示例:

    expr substr "abc" 2 2
    显示bc

    (3)echo ${str:开始索引} 或 echo ${str:开始索引:长度}   开始索引为0
    示例:
    str="abc"
    echo ${str:1},显示bc
    echo ${str:1:2},显示bc

    https://blog.csdn.net/Sharp_UP/article/details/74990277

    1、cut命令截取


    使用说明
    cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。
    如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。
    主要参数
    -b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
    -c :以字符为单位进行分割。
    -d :自定义分隔符,默认为制表符。
    -f :与-d一起使用,指定显示哪个区域。
    -n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的<br />范围之内,该字符将被写出;否则,该字符将被排除。
    1)、使用cut -c 可以截取以字符为单位的串区间


    注:以 - 作为分隔符是截取对应区间内的串

           以 ,作为分隔符是截取对应位置的字符

    2)、cut -b 用法和cut -c 相同,不同的是以字节为单位

    2、# 号截取,删除左边字符,保留右边字符。

    echo ${var#*//}
    其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符

    3、 ## 号截取,删除左边字符,保留右边字符。

    echo ${var##*/}
    ##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符


    4、 %号截取,删除右边字符,保留左边字符

    echo ${var%/*}
    %/* 表示从右边开始,删除第一个 / 号及右边的字符


    5、%% 号截取,删除右边字符,保留左边字符

    echo ${var%%/*}
    %%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符


    6、 从左边第几个字符开始,及字符的个数

    echo ${var:0:5}
    其中的 0 表示左边第一个字符开始,5 表示字符的总个数。


    7、 从左边第几个字符开始,一直到结束。

    echo ${var:7}
    其中的 7 表示左边第8个字符开始,一直到结束。


    8、从右边第几个字符开始,及字符的个数

    echo ${var:0-7:3}
    其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。


    8. 从右边第几个字符开始,一直到结束。

    echo ${var:0-7}
    表示从右边第七个字符开始,一直到结束。

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

  • 相关阅读:
    [ASP.NET Core 3框架揭秘] Options[6]: 扩展与定制
    [ASP.NET Core 3框架揭秘] Options[5]: 依赖注入
    [ASP.NET Core 3框架揭秘] Options[4]: Options模型[下篇]
    [ASP.NET Core 3框架揭秘] Options[3]: Options模型[上篇]
    [ASP.NET Core 3框架揭秘] Options[2]: 配置选项的正确使用方式[下篇]
    [ASP.NET Core 3框架揭秘] Options[1]: 配置选项的正确使用方式[上篇]
    [ASP.NET Core 3框架揭秘] 配置[9]:自定义配置源
    ASP.NET Core 3框架揭秘] 配置[8]:多样化的配置源[下篇]
    [ASP.NET Core 3框架揭秘] 配置[7]:多样化的配置源[中篇]
    [ASP.NET Core 3框架揭秘] 配置[6]:多样化的配置源[上篇]
  • 原文地址:https://www.cnblogs.com/hanxing/p/7599105.html
Copyright © 2011-2022 走看看