shell下定义数组

array=(1 2 3 4 5)   #shell下数组定义是用空格分开。

数组定义方法2:

array
array[0]="1"
array[1]="2"
array[2]="3"

获取数组中有几个元素:

echo ${#array[@]}    #查看数组中有几个元素(length),${#i}能查看变量i的字符长度。

for循环遍历array:

for i in ${array[@]}
do echo    $i
done

带数组下标遍历:

i=0
while [ $i -lt ${#array[@]} ];doecho ${array[$i]}let i++    # i=$(expr $i + 1)  或者 i=$(($i+1))、i=$i+1都能完成自增功能
done
for ((i=0;i<${#array[@]};i++));doecho ${array[$i]}
done   #等同于上面的while循环。

向函数传递数组:

fun() {local _arr=(`echo $1 | cut -d " "  --output-delimiter=" " -f 1-`)local _n_arr=${#_arr[@]}for((i=0;i<$_n_arr;i++));do  elem=${_arr[$i]}echo "$i : $elem"done;
}array=(a b c)
fun "$(echo ${array[@]})"

转载于:https://www.cnblogs.com/beliefer/p/4844263.html

linux shell 数组遍历方式(非原创)相关推荐

  1. linux shell 数组遍历,shell 数组 循环

    #!/bin/bash array=(1 2 3 4 5) #以括号括起为数组 中间是空格 for num in "${array[@]}" #以这种for打印数组 do echo ...

  2. linux shell 数组 遍历

    在Linux下使用shell的时候,为方便起见,偶尔会用到一下数组.数组的申明方式是: [java] view plaincopyprint? array=(element1 element2 ele ...

  3. linux shell数组深入学习理解

    本文为大家介绍linux shell数组的相关知识,并提供了充足的例子供参考,这么好的东东,千万不要错过 bash shell只支持一维数组,但参数个数没有限制. 声明一个数组: declare -a ...

  4. linux 关联数组,Linux shell数组与关联数组的用法实例

    Linux shell数组与关联数组的用法实例 1. 关联数组 使用 declare -A(declare 的用法请使用 help 进行查看,help declare) 进行声明关联数组变量: $ d ...

  5. JS几种数组遍历方式以及性能分析对比

    前言 这一篇与上一篇 JS几种变量交换方式以及性能分析对比 属于同一个系列,本文继续分析JS中几种常用的数组遍历方式以及各自的性能对比 起由 在上一次分析了JS几种常用变量交换方式以及各自性能后,觉得 ...

  6. js中遍历数组加到新数组_JS几种数组遍历方式总结

    JS数组遍历的几种方式 S数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一 ...

  7. JS几种数组遍历方式总结

    JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代 ...

  8. linux shell数组定义、元素获取及其长度获取

    linux shell数组定义.元素获取及其长度获取

  9. Linux shell递归遍历目录

    Linux shell递归遍历目录 Linux上可以通过如下shell脚本遍历指定目录: #!/bin/bashfunction list_file() {local last_dir=$(pwd)i ...

最新文章

  1. [Z]谷歌(Google)算法面试题
  2. 64bit win7+VS2013+opencv2.4.9配置
  3. Weex Project (npm run android)-Error: Error: Command failed
  4. 按月拆分数据库表--oracle
  5. 实验2linux系统使用,操作系统实验答案-实验2Linux的基本操作及vi的使用(答案)
  6. 关于win10家庭版不能开启虚拟机的问题
  7. Java的IO操作中关闭流的注意点
  8. 移动网流量用户身份识别系统的源代码_真武庙车辆识别系统安装效果图
  9. 微信小程序 video 视频 组件
  10. ssms 连接 oracle,【SQL】用SSMS连接Oracle手记
  11. CIDR无类别域间路由
  12. CS1703 C# Multiple assemblies with equivalent xxx... and. Remove one of the duplicate references.
  13. Unity 百度语音识别
  14. bootstrap专栏 03.图文处理 02.图文排版
  15. IDEA中Artifact的配置
  16. SpringBoot配置全局异常捕获
  17. Credit Card Fraud Detection(信用卡欺诈检测相关数据集)
  18. Microsoft AjaxToolkits 17. UpdatePanelAnimation控件
  19. 山东大学软件学院算法设计与分析期末考试回忆版
  20. JMeter 5.0: 自定义变量

热门文章

  1. iBATIS配置文件的特殊使用方法
  2. Purism 发布 PureBoot:高度安全、完整的 Linux 引导流程
  3. 百万级分组大报表开发与呈现
  4. SQL2000中默认sa帐号改名和删除的最安全方法
  5. 如何实现报表设计中的高精度报表套打?
  6. VBA【遍历每个工作表并将工作表表名赋予B2单元格】
  7. ASP .NET 如何在 SQL 查询层面实现分页
  8. Mysql 数据库命令行导出导入sql脚本
  9. x86的cpu处理int类型并不是处理char高效多少
  10. Raman Kazhamiakin