Linux中Shell数组的笔记

4418040-4b4ae17a07b31b91

Shell数组的介绍

数组算是一种特殊的数据结构,数据项可以成为数组的元素,可以通过数组的索引获取每一个数组的元素值。

数组的典型的使用场景是把相同类型的元素汇总在一起。由于Shell变量属于弱类型,所以数组里面的元素并不一定是相同类型。

注意:Shell中的数组只支持一维数组,但对元素的个数没有限制,数组元素的索引也是从0开始。

数组的定义

数组的定义格式:declare -a 数组名称

比如:declare -a testarr #定义一个testarr数组

testarr[0]=10 #第一个元素赋值

testarr[1]="hello" #第二个元素赋值

#数组定义的时候同时赋值

declare -a testarr=(10,'hello') 等价于 testarr=(10,'hello')

testarr[2]=20 #增加元素

#不连续赋值

testarr1=([1]=10 [3]=30 [5]=50)

数组的操作

1、数组的取值

格式如下:${数组名[索引]}

比如:echo ${testarr[0]}

echo ${testarr[@]} #获取元素的所有值  输出以空格隔开的元素值

echo ${testarr[*]} #获取元素的所有值,输出的是一整个字符串

2、数组长度

方法如下:

echo ${#testarr[@]} #获取数组元素的个数

echo ${#testarr[*]} #获取数组元素的个数

echo ${#testarr[0]} #获取数组某一个元素的长度

3、数组截取

echo ${testarr[@]:1:2} 

#获取数组的索引值是1、2的元素

echo ${testarr[2]:0:2} 

#获取数组索引值是2元素值截取从第0个字符开始连续2个字符

4、连接数组

testarr2={${testarr[@]} ${testarr1[@]}} #合并数组

5、替换元素:将数组内某个元素值替换成其他值

testarr=($testarr[@]/hello/helloworld)

6、取消数组或元素

unset $testarr #取消数组

unset $testarr[0] #取消数组的一个元素

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/272040.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux中php配置

安装nginxphp好久了,今天意外的搭建好了,分享给大家 ,以免以后多走弯路。 nginx已经前面安装好了,现在就开始配置php 安装php 分为两个部分 :一部分是php源码,另外是fastcgi管理进程:php-fpm 庆…

log函数 oracle power_Excel之数学函数SQRT/MOD/EXP/LN/RAND

本部分主要包括ABS函数、SQRT函数、SIGN函数、MOD函数、POWER、EXP函数、LN函数、LOG函数、LOG10函数、RAND函数、RANDBETWEEN函数、PI函数、SIN函数、COS函数、TAN函数、PRODUCT函数、FACT函数、GCD函数、LCM函数、DEGREES函数、RADIANS函数和SUBTOTAL函数共22个。需重点掌握S…

Linux中Shell循环结构for用法笔记

Shell中可以使用for做固定次数循环的处理。常见的for循环用法主要有以下几种:1、带列表的for循环语法结构:for item in (list)docommanddone示例:cat demo1.sh 内容如下:#!/bin/bashnames"小明 小王 小张"for item in n…

焊接符号标注图解示例_【干货】焊接图纸符号汇总 ,学习收藏!!

基本坡口符号坡口符号(注:图中“破”应为“坡”)焊接图纸符号标注图解示例焊接符号标注实例及方法在焊接结构图样上,焊接方法可按国家标准GB5185-85的规定用阿拉伯效字表示,标注在指引线的尾部。常用焊接方法代号见表3-9所示。如果是组合焊接…

Linux有关Shell中if用法笔记

shell中的if主要是用于程序的判断逻辑,从而控制脚本的执行逻辑。这和很多编程语言思路上都是一致的。1、if的用法结构如下:if exp;thencommand1;command2;fi示例:#根据输入的学生成绩打印对应的成绩等级:大于90分为优秀&#xff1…

pyhton数据类型

列表使用场景 列表就是java中的数组 元组用 ()表示 元组的元素不能修改 元组和列表之间的转换 字典 使用 {}表示 合并字典 清空字典 遍历字典 字符串

好程序员应该拥有的7个特质

一个好的程序员应该拥有的10大特质,你符合哪些呢?1、喜欢研究无论你怎么称呼它,你可能遇到的大多数编程问题几乎在一定形式上都已经被解决了。传道书早就记录在案,阳光底下无新事。在GitHub上的库文件列表中,在互联网上…

谷歌浏览器添加插件时显示程序包无效:CRX_HEADER_INVALID 解决办法

在添加谷歌插件的时候,发现谷歌浏览器显示 程序包无效:"CRX_HEADER_INVALID" 解决方法如下: 下图是下载好的 .crx 结尾的插件。 将插件的后缀名改为.rar ,如下图。 解压 接下来就是浏览器添加插件,打开到浏…

推荐VSCode12个比较实用的插件

1、Auto Rename Tag ——自动重命名成对的HTML标记。假如你创建了一个<p>标记。现在你想更改它。有了这个软件&#xff0c;你只需要更改一个就行&#xff0c;另一个会自动修改。从理论上来说&#xff0c;使用这个软件可以把你的工作效率提升一倍。2、HTML CSS Support …

[单选题]$array = array('a','b','c','d'); $array_now = array_splice($array,2); print_r($array_now);...

Array ( [0] > c [1] > d ) Array ( [0] > a [1] > c ) Array ( [0] > b [1] > d ) Array ( [0] > a [1] > b )PHP array_splice() 函数 PHP Array 函数 实例 从数组中移除元素&#xff0c;并用新元素取代它&#xff1a; <?php $a1array("a&q…

图论解油瓶分油问题_一个很有趣的de novo图论算法

首先&#xff0c;小编先给大家介绍一些关于组装的历史。大家肯定也知道&#xff0c;这个组装技术的发展是依赖于测序技术的。首先在一代测序的时候&#xff0c;测序数据量较少&#xff0c;成本较高&#xff0c;人们对于组装的结首先&#xff0c;小编先给大家介绍一些关于组装的…

pip show pip可以查看pip的版本以及升级pip到最新版本

输入命令&#xff1a;pip show pip可以查看pip的版本&#xff0c;如果不是最新版最后会有提示如下&#xff1a; 输入命令&#xff1a;python -m pip install --upgrade pip可以升级pip到最新版本。

盘点程序员开发遇到的30个问题

1、我不知道该删掉还是重写回归曾经写的源代码&#xff0c;总有一种想要重新返工的冲动&#xff0c;逻辑性差&#xff0c;冗余代码多&#xff0c;让人难以理解。但是&#xff0c;如果功能没出现问题&#xff0c;千万不要去修改。这是我经常要面对的困扰&#xff0c;相信也困扰了…

saas是什么意思_为什么越来越多的人选择SaaS模式的crm客户管理系统?

SaaS近几年在国内逐渐升温&#xff0c;很多企业管理者都开始了解SaaS是什么意思&#xff0c;SaaS是企业根据需要&#xff0c;从SaaS提供商获取软件使用权的&#xff0c;直接通过互联网就可进行操作。对于我国大多数中小企业来说&#xff0c;选择SaaS模式的crm客户管理系统也许是…

趣漫揭秘!中国程序员生存现状?

如果没有程序员&#xff0c;整个虚拟世界都会消失不见。全中国7亿多网民&#xff0c;再也不能愉快滴发自拍&#xff0c;看视频&#xff0c;打游戏&#xff0c;甚至连打电话都成了一种幻想。绝大部分电子设备都会变成废铁&#xff0c;人类的生活将完全倒退到70多年以前。程序员贡…

一个App完成入门篇(五)- 完成新闻页面

本节教程将介绍如何用DeviceOne简单而高效的完成一个新闻页面。 导入项目数据模板分离MVVM模型自定义事件展示新闻九宫格展示将要学习的demo效果图如下所示 1. 导入完整项目 本节示例demo请参考下载地址&#xff0c;可以导入到设计器中学习。 为了方便大家理解页面结构&#xf…

程序员职业规划

每个程序员的职业生涯无非以下几种情况&#xff1a;一、帮别人挣钱&#xff08;打工&#xff09;不管你是刚入职的小兵&#xff0c;还是管人的经理&#xff0c;甚至是唬人的总监&#xff0c;都属于这一阶段。通常程序员在这一阶段的职业发展分两条线&#xff0c;专家&#xff0…

电脑处理器i5和i7的区别,如何选择?

对于好多正在准备入手笔记本的朋友们来说&#xff0c;电脑的配置参数真的是让人眼花缭乱&#xff0c;一些看不懂的数字和英文码看得人心烦&#xff0c;i5和i7的区别究竟在哪里那&#xff1f;处理器中央处理器&#xff08;英文Central ProcessingUnit&#xff0c;CPU&#xff09…