作家
登录

如何在Bash中抽取子字符串

作者: 来源: 2017-12-11 17:39:53 阅读 我要评论

  1. this
  2. is
  3. a
  4. test

开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散

所谓“子字符串”就是涌如今其它字符串内的字符串。 比如 “3382” 就是 “this is a 3382 test” 的子字符串。 我们有多种办法可以大年夜中把数字或指定部分字符串采掏出来。

How to Extract substring in Bash Shell style=How to Extract substring in Bash Shell>在 Bash 中采取子字符串

其语法为:

  1. ## 格局 ##
  2. ${parameter:offset:length}

子字符串扩大是 bash 的一项功能。它会扩大成 parameter 值中以 offset 为开端,长为 length 个字符的字符串。 假设, $u 定义如下:

  1. test
  1. ## 定义变量 u ##
  2. u="this is a test"

那么下面参数的子字符串扩大会采掏出子字符串:

  1. var="${u:10:4}"
  2. echo "${var}"

结不雅为:

个中这些参数分别表示:

  • 10 : 偏移地位
  • 4 : 长度 

应用 IFS

根据 bash 的 man 页解释:


IFS (内部字段分隔符)用于在扩大落后行单词瓜分,并用内建的 read 敕令将行瓜分为词。默认值是。

另一种 POSIX 就绪POSIX ready的筹划如下:

  1. u="this is a test"
  2. set -- $u
  3. echo "$1"
  4. echo "$2"
  5. echo "$3"
  6. echo "$4"

输出为:

下面是一段 bash 代码,用来大年夜 Cloudflare cache 中去除带主页的 url。

它的应用办法为:

  1. ~/bin/cf.clear.cache https://www.cyberciti.biz/faq/bash-for-loop/ https://www.cyberciti.biz/tips/linux-security.html 

借助 cut 敕令

可以应用 cut 敕令来将文件中每一行或者变量中的一部分删掉落。它的语法为:

  1. #!/bin/bash
  2.  1/4    1 2 3 4 下一页 尾页

      推荐阅读

      如何成为一名数据分析师:数据的初步认知

    开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散对所有大年夜事数据相干工作的人而言,都有一个老生常谈的问题: 数据认知 !毕竟在真正开端分析、BI 报表开辟或者建模前,对数据进行必定的审查>>>详细阅读


    本文标题:如何在Bash中抽取子字符串

    地址:http://www.17bianji.com/lsqh/39673.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)