shell索引数组变量-定义获取拼接删除

news/2024/10/24 0:17:15/

目录

  • 介绍
  • 数组的定义
    • 演示
  • 数组的获取
  • 数组的拼接
    • 演示:
  • 数组的删除

介绍

Shell 支持数组(Array), 数组是若干数据的集合,其中的每一份数据都称为数组的元素。
( 注意Bash Shell 只支持一维数组,不支持多维数组)

数组的定义

语法

在 Shell 中,用括号 ( ) 来表示数组,数组元素之间用空格来分隔. 语法为:

array_name=(item1 item2 ...) # 方式1
array_name=([索引下标1]=item1 [索引下标2]=item2 ...) # 方式2
注意,赋值号 = 两边不能有空格

演示

1.定义数字存储

nums=(29 100 13 8 91 44)

2.Shell 是弱类型的,它并不要求所有数组元素的类型必须相同

arr=(20 56 "shuaigenihao")

Shell数组元素定义后不是固定的, 定义后还可以赋值

arr[6]=100

3.可以给指定元素赋值初始化

arr2=([0]=1 [2]=100 [4]=aa)

数组的获取

语法
1.通过下标获取元素值,index从0开始

${arr[index]}
注意使用 { }

2.获取值同时复制给其他变量

item=${arr[index]}

3.使用 @ 或 * 可以获取数组中的所有元素

${arr[@]}
${arr[*]}

在这里插入图片描述

4.获取数组的长度或个数

${#arr[@]}
${#arr[*]}

在这里插入图片描述
5.获取数组指定元素的字符程度

${#arr[索引]}

在这里插入图片描述

数组的拼接

介绍

所谓 Shell 数组拼接(数组合并),就是将两个数组连接成一个数组

语法

使用 @ 和 * 获取数组所有元素之后进行拼接

array_new=(${array1[@]} ${array2[@]} ...)
array_new=(${array1[*]} ${array2[*]} ...)

演示:

在这里插入图片描述

数组的删除

介绍

删除数组指定元素数据和删除整个数组数据

语法

删除数组指定元素数据

unset array_name[index]

删除整个数组

unset array_name

演示:
在这里插入图片描述

在这里插入图片描述


http://www.ppmy.cn/news/421243.html

相关文章

自动化测试工具playwright、selenium4、cypress等对比

前言 自己之前用selenium, cypress工具做过自动化测试,目前公司要做自动化测试,主要产品是web网页(PC和手机端),微信小程序和 app, 需要结合公司的产品和各工具的特点来选择符合的测试工具 对比分析 以下是根据个人…

DDR 内存基础知识(2)- DDR预取

对预取概念理解之前,先来复习下DDR颗粒位宽的概念。上一篇文章说了,一个Memory Array中由行地址和列地址的交叉选中一个位,若两个Array叠加在一起,就同时选中了两个Bit,位宽是X2。若四个Array叠加到一起,就…

DDR原理

一、 软件平台与硬件平台 软件平台: 1、操作系统:Windows-8.1 2、开发套件:无 3、仿真工具:无 硬件平台: 1、 FPGA型号:无 2、 DDR3型号:无 二、 存储器的分类 存储器一般来说可以分为内部存储…

从DDR到DDR4,内存核心频率其实基本上就没太大的进步

从2001年DDR内存面世以来发展到2019年的今天,已经走过了DDR、DDR2、DDR3、DDR4四个大的规格时代了(DDR5现在也出来了)。内存的工作频率也从DDR时代的266MHz进化到了今天的3200MHz。这个频率在操作系统里叫Speed、在内存术语里叫等效频率、或干…

DDR 内存的速度

DDR 内存的内核其实就是SDRAM的存储内核,只不过是在端口上加了预取,所以仍然叫做SDRAM,但是在前面增加了DDR的字头。 第一代DDR SDRAM只有2bit预取 ,所以内外的时钟频率相同,但是从外部看是时钟的上、下沿都在工作&am…

ddr频率及带宽

本文分别以DDR/DDR2/DDR3为例介绍 DDR 266、DDR2 533、DDR3 1066 一、核心频率 核心频率即DDR的clk频率 DDR 266 核心频率133MHz DDR2 533 核心频率 133MHz DDR3 1066 核心频率 133MHz 266 533 1066是DDR的标签表示的就是DDR的标称单bit位宽数据传输速率或等效频率…

DDR是什么,干什么用

严格的说DDR应该叫DDR SDRAM,人们习惯称为DDR,DDR SDRAM是Double Data Rate SDRAM的缩写,是双倍速率同步动态随机存储器的意思。DDR内存是在SDRAM内存基础上发展而来的,仍然沿用SDRAM生产体系,因此对于内存厂商而言&am…

深入浅出DDR系列(一)--DDR原理篇

内存是我们平常嵌入式系统中接触的比较频繁的硬件之一,但是我们对这个器件的了解却知之甚少。主要的原因是作为嵌入式工程师的我们,这部分主要是配置参数,而这些参数都是由芯片厂商已经提供好了,硬件工程师都会基于厂商认证的DDR选…