shell脚本字符串和数组的使用操作方法

 更新时间:2019年06月28日 11:56:14   作者:泽锦  
这篇文章主要介绍了shell脚本字符串和数组的使用操作方法,在文中给大家提到shell将字符串分隔成数组的方法,需要的朋友可以参考下

字符串

可以使用单引号和双引号定义字符串变量但是单引号中不支持变量解析

#! /bin/bash
username="mayuan"
str_1="hello ${username}" 
str_2='hello ${username}'
echo $str_1 # hello mayuan
echo $str_2 # hello ${username}

获取字符串的长度

#! /bin/bash
username="mayuan"
echo ${#username} # 6

截取字符串

#! /bin/bash
username="mayuan"
echo ${username:1:3} # 从第二个字符开始截取3个字符输出"ayu"

查找指定字符

#! /bin/bash
username="mayuan"
echo $(expr index "${username}" y) #查找y在指定字符的位置

  数组

#! /bin/bash
arr=(1 2 3 4 5)
echo ${arr[0]} #输出1
echo ${arr[1]} #输出2

获取数组长度

#! /bin/bash
arr=(1 2 3 4 5)
echo ${#arr[@]} #输出5
echo ${#arr[*]}

PS:下面给大家介绍shell将字符串分隔成数组

#!/bin/bash
a="hello,world,nice,to,meet,you"
#要将$a分割开,先存储旧的分隔符
OLD_IFS="$IFS"
#设置分隔符
IFS="," 
#如下会自动分隔
arr=($a)
#恢复原来的分隔符
IFS="$OLD_IFS"
#遍历数组
for s in ${arr[@]}
do
echo "$s"
done

变量$IFS存储着分隔符,这里我们将其设为逗号 "," OLD_IFS用于备份默认的分隔符,使用完后将之恢复默认。

arr=($a)用于将字符串$a按IFS分隔符分割到数组$arr

${arr[0]} ${arr[1]} ... 分别存储分割后的数组第1 2 ... 项

${arr[@]}存储整个数组。

${!arr[@]}存储整个索引值:1 2 3 4 ...

${#arr[@]} 获取数组的长度。

总结

以上所述是小编给大家介绍的shell脚本字符串和数组的使用操作方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • 使用find命令快速定位配置文件位置

    使用find命令快速定位配置文件位置

    大家知道在配置的时候咱们经常需要修改配置文件,甚至现在的开发就是配配配,记又记不住,每次自己查找太费时间,最近学会了一个命令-find,现在分享以下,本文以nginx为例子给大家详细介绍,对find命令定位配置文件位置相关知识感兴趣的朋友一起看看吧
    2022-12-12
  • linux shell循环:for、while、until用法详解

    linux shell循环:for、while、until用法详解

    这篇文章主要介绍了linux shell下常用的循环for、while、until的用法,这也是脚本之家小编看到的比较详细的文章了,感兴趣的朋友可以参考一下,最好是在环境下自己手工打一份,不要复制
    2019-04-04
  • Linux Shell如何用ssh命令统计分布式集群信息详解

    Linux Shell如何用ssh命令统计分布式集群信息详解

    作为命令的ssh,作用就是在一台linux机器上去登录到另一台linux机器,下面这篇文章主要给大家介绍了关于Linux Shell如何用ssh命令统计分布式集群信息的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • Linux shell实现HTTP服务示例代码

    Linux shell实现HTTP服务示例代码

    这篇文章介绍的是如何实现一个可以调用shell脚本的HTTP服务,本文给出了详细的示例代码,有需要的可以参考借鉴。
    2016-08-08
  • Formatting Long Lines 格式化多行字符的shell脚本

    Formatting Long Lines 格式化多行字符的shell脚本

    这篇文章主要介绍了Formatting Long Lines 格式化多行字符的shell脚本,需要的朋友可以参考下
    2016-08-08
  • shell函数内调用另一个函数(不带返回值和带返回值)

    shell函数内调用另一个函数(不带返回值和带返回值)

    本文主要介绍了shell函数内调用另一个函数(不带返回值和带返回值),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • linux下编译boost.python简单方法

    linux下编译boost.python简单方法

    下面小编就为大家带来一篇linux下编译boost.python简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • shell 脚本中的 '-f' 和 '-d' 是什么意思

    shell 脚本中的 '-f' 和 '-d&apo

    本文讲解如何使用'-f'和'-d'条件表达式来测试文件和目录,在实际脚本中,这样的条件判断常用于根据不同的情况执行不同的操作,感兴趣的朋友跟随小编一起看看吧
    2023-12-12
  • shell中的排序算法示例代码

    shell中的排序算法示例代码

    本文主要介绍了shell中的排序算法示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • linux环境下编写shell脚本实现启动停止tomcat服务的方法

    linux环境下编写shell脚本实现启动停止tomcat服务的方法

    这篇文章主要介绍了linux环境下编写shell脚本实现启动停止tomcat服务的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-06-06

最新评论