Bash的数组
Bash 2.x提供了创建一维数组的能力。
- 有多种方法创建,用内建命令declare -a或直接数组元素赋值。
- 向数组赋值时,如果不指定下标,下标自动从0开始,每次增加1。
- 数组的尺寸没有限制,下标也不必是一定顺序的数字。
- 获取数组元素的语法是:${arrayname[index]}
- 获取所有数组元素列表的语法是:${arrayname[*]}
- 获取数组元素数目的语法是:${#arrayname[*]}
$declare -a nums=(45 33 100 65)
$echo ${nums[0]}
45
$echo ${nums[*]}
45 33 100 65
$states=(ME [3]=CA [2]=CT)
$echo ${states[*]}
ME CA CT
$names=(Tom Peter Mike)
$names[5]=panda
$echo "All the array elements are ${names[*]}"
All the array elements are Tom Peter Mike panda
$echo "The number of elements in the array is ${#names[*]}"
The number of elements in the array is 4
$unset names
=-=-=-=-=
Powered by Blogilo
Bash的数组的更多相关文章
- 使用bash关联数组统计单词
使用bash关联数组统计单词 从bash 4开始支持关联数组,使用前需要声明,即 declare -A map map[key1]=value1 map[key2]=value2 map=([key1 ...
- Bash : 索引数组
Bash 提供了两种类型的数组,分别是索引数组(indexed array)和关联数组(associative array).本文主要介绍索引数组的基本用法. 索引数组的基本特点 Bash 提供的数组 ...
- bash之数组
Bash 提供索引和联想的一维数组变量.可用作任何变量 索引的数组 :内置的声明将显式声明数组.有没有最大限制 一个数组,也没有要求成员将索引或连续分配的大小.索引的数组 引用使用 (包括算术表达式) ...
- bash shell数组使用总结
本文为原创博文,转发请注明原创链接:https://www.cnblogs.com/dingbj/p/10090583.html 数组的概念就不多说了,大家都懂! shell数组分为索引数组和关联数 ...
- UNIX/Linux系统管理技术手册(3)----bash 数组和算术运算
复杂的数据结构和计算不是 bash 的特长.但它的确至少提供了数组和算术运算. 1.算术运算 所有的 bash 变量的值都是字符串,所以 bash 在赋值的时候并不区分数字 1 和 字符串 " ...
- Bash实用技巧:同时循环两个列表
摘要: 你会学到一种原创的同时循环两个列表的方法.类似于Python或者Haskell的zip函数,非常简洁直观,效果如下: $ paste <( ) <( ) | while read ...
- bash{} 方法总结
假设我们定义了一个变量为: file=/dir1/dir2/dir3/my.file.txt 我们可以用 ${ } 分别替换获得不同的值: ${file#*/}:拿掉第一条 / 及其左边的字串:dir ...
- Linux数组array基础
Linux数组array基础[${a[*]}和$a的区别] Bash中,数组变量的赋值有两种方法: (1) name = (value1 ... valuen) 此时下标从0开始 (2) name[i ...
- ksh和bash区别
一.实践证明,在AIX上用的是ksh,linux上是bash sh或bsh,全名是bourne shell.它最早出现,是标准shell.后两者都兼容它. ksh和bash后续加入了历史记录,交互特性 ...
随机推荐
- Windows7 x64 编译Dlib库
最近用到Dlib库,需要先编译. 本文利用 cmake + Sublime Text 2 + MinGW实现编译. 1. 下载dlib源码[dlib18.17]http://pan.baidu.com ...
- 蓝桥杯- 煤球数目-java
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...
- iOS-工程和工作空间、静态库和框架之间的关系
使用Xcode创建的工程Project是单独分开的,如果想要几个工程同时存在,可以通过创建工作空间Workspace.工作空间是对各工程的集合,工程文件名的后缀为.xcodeproj,工作空间文件名的 ...
- 从foreach语句枚举元素看数组
在foreach语句中使用枚举,可以迭代数组或集合中的元素,且无须知道集合中的元素的个数.如图显示了调用foreach方法的客户端和集合之间的关系.数组或集合实现带GetEnumerator()方法的 ...
- SVN常见问题总结一
注意 转载须保留原文链接(http://www.cnblogs.com/wzhiq896/p/6828776.html ) 作者:wangwen896 SVN是Subversion的简称,是一个开放 ...
- @PathVariable和@RequestParam的区别,@SessionAttributes
简介: handler method参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类: A:处理requet uri部分(这里指uri template中variable,不 ...
- 你真的用好了Python的random模块吗?
random模块 用于生成伪随机数 源码位置: Lib/random.py(看看就好,千万别随便修改) 真正意义上的随机数(或者随机事件)在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结 ...
- spring boot入门(一)自己动手搭建spring boot
spring boot官方文档 http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/html/index.html 此篇文章 ...
- 详谈JAVA中的file类与IO流
File类 位置于java.io包构造方法:File(String parent, String child)new file("d:\\","a.txt") ...
- 12、借助Jacob实现Java打印报表(Excel、Word)
12.使用Jacob来处理文档 Word或Excel程序是以一种COM组件形式存在的.如果能够在Java中调用相应组件,便能使用它的方法来获取文档中的文本信息.Jacob是一个JAVA到微软的COM接 ...