bash自带的切片操作的实现

 更新时间:2025年09月09日 08:28:51   作者:Code Rhythm  
本文主要介绍了bash自带的切片操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本文主要介绍了 bash自带的切片操作的实现,具体如下:

echo ${#a} 	# $a中字符串的个数
echo ${a:3} 	# $a中从第三个开始取直到结束
echo ${a:3:2}	# $a中从第三个开始去两个字符
echo ${a: -1}	# 取最后一个字符
echo ${a#*.} 	# 从左边开始删除直到遇到.为止
echo ${a##*.} 	# 从左边开始删除直到遇到最后一个.为止
echo ${a%.*}	# 从右面开始删除直到遇到.为止
echo ${a%%.*}	# 从右面开始删除直到遇到最后一个.为止
echo ${a//abc/xyz}	# 将变量a中的所有的abc替换成xyz
echo ${1#--check=}  #删除第1个位置变量里的--check=字符串
echo ${1##[-+]}   #删除第1个位置变量的内容开头的-或者+

cut 截取字符串
-c, --characters=LIST
select only these characters
- 表示连续
, 表示不连续

[root@rocky ~]# str="pythoniloveyou"
[root@rocky ~]# echo $str
pythoniloveyou
[root@rocky ~]# echo $str|cut -c 1-6
python
[root@rocky ~]# echo $str|cut -c 1,6
pn
[root@rocky ~]# echo $str|cut -c 1,6-9
pnilo

统计一个字符串的个数

[root@rocky ~]# echo ${#str}
14
[root@rocky ~]# echo $str|wc -L
14

截取

[root@rocky ~]# echo ${str:0:6}
python
[root@rocky ~]# echo ${str:7:4}
love
[root@rocky ~]# echo ${str: -3}
you

从左边开始删除直到遇到.为止

[root@rocky ~]# bigcity="beijing.shanghai.guangzhou.shenzhen.changsha"
[root@rocky ~]# echo ${bigcity#*.}
shanghai.guangzhou.shenzhen.changsha
[root@rocky ~]# echo ${bigcity##*.}
changsha

从右面开始删除直到遇到.为止

[root@rocky ~]# echo ${bigcity%.*}
beijing.shanghai.guangzhou.shenzhen
[root@rocky ~]# echo ${bigcity%%.*}
beijing

删除第一个位置变量的内容开头的-或者+

[root@rocky shell]# vim slice.sh
echo ${1##[-+]}

[root@rocky shell]# bash slice.sh abc+def-ghi+jkl-mno
abc+def-ghi+jkl-mno
[root@rocky shell]# bash slice.sh +abc+def-ghi+jkl-mno
abc+def-ghi+jkl-mno
[root@rocky shell]# bash slice.sh -abc+def-ghi+jkl-mno
abc+def-ghi+jkl-mno

删除第一个位置变量里的 --check=字符串

[root@rocky shell]# cat slice.sh 
echo ${1##[+-]}
echo ${1#--check=}
[root@rocky shell]# bash slice.sh --check=root
-check=root
root

如果nicelevel变量存在就输出它的值,如果没有赋值,则输出空值

[root@rocky shell]# nicelevel=100
[root@rocky shell]# echo ${nicelevel:-}
100

如果niceleve1l变量存在就输出它的值,如果没有赋值,则输出0

[root@rocky shell]# echo ${nicelevel1:-}

[root@rocky shell]# echo ${nicelevel1:-0}
0

替换

[root@rocky shell]# num="123123456123"
[root@rocky shell]# echo ${num/123/abc}
abc123456123
[root@rocky shell]# echo ${num//123/abc}
abcabc456abc

到此这篇关于bash自带的切片操作的实现的文章就介绍到这了,更多相关bash 切片操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • 详解shell 函数定义与调用

    详解shell 函数定义与调用

    这篇文章主要介绍了shell 函数定义与调用的相关资料,帮助大家更好的理解和学习shell,感兴趣的朋友可以了解下
    2020-09-09
  • Shell脚本自动部署项目的方法步骤

    Shell脚本自动部署项目的方法步骤

    本文主要介绍了Shell脚本自动部署项目的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Linux oracle数据库自动备份自动压缩脚本代码

    Linux oracle数据库自动备份自动压缩脚本代码

    这篇文章主要介绍了Linux oracle数据库备份完成后可以自动压缩脚本代码,大家参考使用
    2013-12-12
  • Shell正则表达式验证IP地址

    Shell正则表达式验证IP地址

    这篇文章主要介绍了Shell正则表达式验证IP地址,本文给出了多个方法,并分别给出实现代码,需要的朋友可以参考下
    2015-05-05
  • Linux Shell在目录下使用for循环结合if查找文件的巧用

    Linux Shell在目录下使用for循环结合if查找文件的巧用

    今天小编就为大家分享一篇关于Linux Shell在目录下使用for循环结合if查找文件的巧用,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 详解adb shell 常用命令

    详解adb shell 常用命令

    这篇文章主要介绍了详解adb shell 常用命令,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Linux查看当前系统的资源占用情况的常用命令

    Linux查看当前系统的资源占用情况的常用命令

    本文介绍了几种常用的系统性能监控工具,包括top、free、vmstat和iostat等命令的使用方法及其参数说明,通过这些工具可以有效监控CPU、内存、磁盘IO等关键资源的状态,需要的朋友可以参考下
    2025-04-04
  • linux tar命令简介

    linux tar命令简介

    tar命令用来打包,解包和压缩。这篇文章主要介绍了linux tar命令简介,需要的朋友可以参考下
    2017-10-10
  • 分享一个入门级可控多线程shell脚本代码

    分享一个入门级可控多线程shell脚本代码

    这篇文章主要介绍了分享一个入门级可控多线程shell脚本代码,需要的朋友可以参考下
    2016-02-02
  • Linux Shell脚本中如何获取命令运行的结果

    Linux Shell脚本中如何获取命令运行的结果

    脚本中常常要获取一些命令的执行结果,比如当前目录pwd、当前时间date等等,下面这篇文章主要给大家介绍了关于Linux Shell脚本中如何获取命令运行的结果,需要的朋友可以参考下
    2023-06-06

最新评论