Linux shell字符串截取、替换、删除以及trim代码示例_linux shell_脚本之家

Linux shell字符串截取、替换、删除以及trim代码示例

 更新时间:2024年03月01日 14:54:24   作者:aabond  
在Shell编程中,截取、替换、删除字符串是非常常见的操作,这篇文章主要给大家介绍了关于Linux shell字符串截取、替换、删除以及trim的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

字符串截取

从左向右截取第一个//后的字符串

word=abcd-//master-01://httpab
echo ${word#*//} 
# 输出:master-01://httpab

从左向右截取最后一个//后的字符串

word=abcd-//master-01://httpab
echo ${word##*//} 
# 输出:httpab

从右向左截取第一个//后的字符串

word=abcd-//master-01://httpab
echo ${word%//*} 
# 输出:abcd-//master-01:

从右向左截取最一个//后的字符串

word=abcd-//master-01://httpab
echo ${word%%//*} 
# 输出:abcd-

截取位置0后3个字符

word=abcd-//master-01://httpab
echo ${word:0:3} 
# 输出:abc

从位置1截取到末尾

word=abcd-//master-01://httpab
echo ${word:1} 
# 输出:bcd-//master-01://httpab

从位置-1截取到末尾,就是截取最后一个

word=abcd-//master-01://httpab
echo ${word:(-1)} 
# 输出:b

字符串替换

从左到右,匹配第一个,替换//为cd

word=abcd-//master-01://httpab
echo ${word/\/\//cd} 
# 输出:abcd-cdmaster-01://httpab

将所有匹配的//替换为cd

word=abcd-//master-01://httpab
echo ${word//\/\//cd} 
# 输出:abcd-cdmaster-01:cdhttpab

前缀匹配,只匹配从位置0开始的字符

word=abcd-//master-01://httpab
echo ${word/#ab/cd} 
# -不是前缀,会匹配失败
echo ${word/#-/cd}
# 输出:abcd-cdmaster-01://httpab
# 输出:abcd-//master-01://httpab

后缀匹配,只匹配结尾字符

word=abcd-//master-01://httpab
echo ${word/%http*/xy} 
# 输出:abcd-//master-01://xy
echo ${word/%ab/xy}
# 输出:abcd-//master-01://httpxy
echo ${word/%ab*/xy}
# 出现*,会从起始匹配
# 输出:xy

字符串删除

利用字符截取和替换,以及拼接可以实现删除字符的效果

删除前3个字符

word=abcd-//master-01://httpab
echo ${word#*${word:0:3}} 
# 输出:d-//master-01://httpab

删除后3个字符

word=abcd-//master-01://httpab
echo ${word%*${word:(-3)}} 
# 输出:abcd-//master-01://htt

删除第一个ab

word=abcd-//master-01://httpab
echo ${word/ab/} 
# 输出:cd-//master-01://httpab

删除所有ab

word=abcd-//master-01://httpab
echo ${word//ab/} 
# 输出:cd-//master-01://http

删除最后一个ab

word=abcd-//master-01://httpabcd
echo ${word%ab*}${word##*ab}
# 输出:abcd-//master-01://httpcd

字符串trim

利用xargs可以实现trim

word="   hello  wolrd  "
word=`echo $word | xargs`
echo $word
# 输出:hello  wolrd

参考博客://www.jb51.net/jiaoben/316765sh8.htm

总结

到此这篇关于Linux shell字符串截取、替换、删除以及trim的文章就介绍到这了,更多相关Linux shell字符串截取替换删除内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何编写健壮的Bash脚本(经验分享)

    如何编写健壮的Bash脚本(经验分享)

    本文介绍下,编写出健壮的bash shell脚本的方法,感兴趣的朋友参考学习下
    2013-11-11
  • shell 判断语句脚本用法解析

    shell 判断语句脚本用法解析

    这篇文章主要为大家介绍了shell判断语句脚本用法解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • shell实现字符编码转换工具分享

    shell实现字符编码转换工具分享

    这篇文章主要介绍了shell实现的字符编码转换工具,支持UTF-8转GBK和GBK转UTF-8,需要的朋友可以参考下
    2014-03-03
  • shell脚本杀死指定端口进程的实现示例

    shell脚本杀死指定端口进程的实现示例

    随着越来越广泛的Linux系统使用,如何轻松杀死指定程序端口成为了很多系统管理员最迫切关心的问题,本文就详细的介绍一下如何实现,感兴趣的可以了解一下
    2023-10-10
  • shell中嵌套执行expect命令实例

    shell中嵌套执行expect命令实例

    这篇文章主要介绍了shell中嵌套执行expect命令实例,一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,需要的朋友可以参考下
    2014-12-12
  • Shell脚本实现监控kingate并自动启动

    Shell脚本实现监控kingate并自动启动

    这篇文章主要介绍了Shell脚本实现监控kingate并自动启动,本文直接给出实现代码,需要的朋友可以参考下
    2014-12-12
  • shell 生成随机数的实现方法总结

    shell 生成随机数的实现方法总结

    这篇文章主要介绍了 shell 生成随机数的实现方法总结的相关资料,希望通过本能帮助到大家,让大家彻底掌握这几种随机数的方法,需要的朋友可以参考下
    2017-09-09
  • Linux下Shell脚本中几种基本命令的替换区别

    Linux下Shell脚本中几种基本命令的替换区别

    最近因为工作需要,需要编写shell脚本。编写大量shell脚本时,累计了大量经验,也让自己开始迷糊几种函数输出调用的区别。后面和前辈们请教了一下这个问题,大致明白了区别。这里分享给大家,希望对大家能有所收获。下面来一起看看吧。
    2016-10-10
  • 使用scp获取远程linux服务器上的文件 linux远程拷贝文件

    使用scp获取远程linux服务器上的文件 linux远程拷贝文件

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,scp传输是加密的,下面看一下详细使用方法吧
    2014-01-01
  • 一些你必须要熟练掌握的git命令

    一些你必须要熟练掌握的git命令

    git 现在的火爆程度非同一般,它被广泛地用在大型开源项目,团队开发,以及独立开发者,甚至学生之中。下面这篇文章主要给大家分享了一些你必须要熟练掌握的git命令,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02

最新评论