shell编程(二)——字符串与数组

本文为shell 编程的第二篇,介绍shell中的字符串和数组相关内容。

一、字符串

shell 字符串可以用单引号 ‘’,也可以用双引号 “”,也可以不用引号。

单引号的特点

  • 单引号里不识别变量
  • 单引号里不能出现单独的单引号(使用转义符也不行),但可成对出现,作为字符串拼接使用。

双引号的特点

  • 双引号里识别变量
  • 双引号里可以出现转义字符

字符串相关操作,通过如下案例进行说明,使用的环境是Windows下的bash。

name="xiaoyuzhou"
str1='hello, '${name}''
str2='hello, ${name}'
str3="hello, "${name}""
str4="hello, ${name}"
# 字符串拼接
echo ${str1}_${str2}
echo ${str3}_${str4}
# 获取字符串长度
echo ${#name}
# 截取子字符串
echo ${name:4:2}
# 查找子字符串
echo `expr index ${name} "yu"`

在这里插入图片描述

二、数组

bash 只支持一维数组,数组下标从0开始。

# 创建数组, 两种方式
books=([2]=bookC [0]=bookA [1]=bookB)
colors=(red yellow bule)

# 访问数组单个元素
echo ${books[1]}
# 访问数组所有元素
echo ${books[*]}
echo ${colors[@]}
# 访问部分元素,${books[@]} 扩展为整个数组,:0:2取出了数组中从 0 开始,长度为 2 的元素。
echo ${books[@]:0:2}

# 访问数组长度
echo ${#books[*]}

# 2.4 向数组中添加元素
books=(bookC "${books[@]}" bookD)
echo ${colors[@]}

# 2.5 从数组中删除元素
unset colors[0]
echo ${colors[@]}

在这里插入图片描述

相关推荐

  1. shell编程-数组运算符详解(超详细)

    2024-06-09 23:00:06       50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-09 23:00:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-09 23:00:06       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-09 23:00:06       82 阅读
  4. Python语言-面向对象

    2024-06-09 23:00:06       91 阅读

热门阅读

  1. 算法训练营第四十九天 | LeetCode 139单词拆分

    2024-06-09 23:00:06       26 阅读
  2. 《Linux内核精通》笔记参考目录

    2024-06-09 23:00:06       19 阅读
  3. tengine+lua的镜像制作

    2024-06-09 23:00:06       29 阅读
  4. CSS:字数超出容器范围,超出部分省略,变成...

    2024-06-09 23:00:06       52 阅读
  5. #09 Stable Diffusion动画制作入门

    2024-06-09 23:00:06       33 阅读
  6. oracle开发中常用的sql语句

    2024-06-09 23:00:06       35 阅读
  7. autosar RTE模块功能介绍

    2024-06-09 23:00:06       42 阅读
  8. Rating Compression(单调栈,树状数组)

    2024-06-09 23:00:06       36 阅读