Bash 提供索引和联想的一维数组变量。可用作任何变量
索引的数组 ;内置的声明将显式声明数组。有没有最大限制
一个数组,也没有要求成员将索引或连续分配的大小。索引的数组
引用使用 (包括算术表达式) 的整数和是从零开始 ;关联数组
使用任意字符串引用。
如果任何变量分配给使用语法名称 [sub-自动创建索引的数组
脚本] = 值。下标被当作算术表达式的计算结果必须为数字
大于或等于零。若要显式声明索引的数组,使用声明-名称 (见壳
内置下面的命令)。声明-[下标] 的名称也可以接受 ;下标将被忽略。
使用创建关联数组声明-名称。
属性可以指定数组变量使用 declare 和只读复古。每个
属性适用于所有成员的数组。
数组分配到使用复合赋值的窗体名称 =(value1...valuen),其中的每个值
形式 [下标] = 字符串。索引的数组分配不需要的支架和下标。
当将分配给索引数组,如果提供可选支架和下标时,该指数是
分配给 ;否则分配的索引是元素的由语句所分配到的最后一个索引
加一。索引从零开始。
当将分配给一个关联数组,下标是必需的。
此语法也是内置的声明所接受的。单个数组元素可能分配给使用
[下标] 名称 = 值上面介绍的语法。
可以使用 ${name [下标]} 引用数组中的任何元素。大括号被必需避免
路径名扩展与冲突。如果下标是或 *,word 将扩展到所有成员的名字。
这些下标不同仅一词出现在双引号内。如果一个单词的双引,
${name} [*] 将扩展到单个单词的第一个字符分隔每个数组成员的值
IFS 特殊变量,和 ${名称 [@]} 扩展到一个单独的单词的每个元素的名称。当那里
没有阵列成员,${名称 [@]} 扩展到 nothing。如果双引扩大内发生
字,第一个参数的扩展在一起的原始的词的开始部分和
最后一个参数的扩展在一起的原始词的最后部分。这是类似
扩大的特殊参数 * 和 @ (参见上述特殊参数)。$ {#name [下标]}
将扩展至 ${name [下标]} 的长度。如果下标是 * 或 @、 扩张是 ele-数
在数组中的发言。没有下标是等效于引用引用数组变量
下标为 0 的数组。
数组变量被视为集,如果已指定下标的值。空字符串是有效的
值。
未设置的内置的用来摧毁阵列。未设置的名称 [下标] 毁坏索引处的数组元素
下标。必须小心以避免不必要的副作用造成的路径名扩展。未设置的名称,
名称哪里的数组或未设置的名称 [下标],其中下标是 * 或 @,删除整个数组。
申报、 本地和 readonly 复古每个接受了-a 选项来指定索引的数组和-
选项来指定一个关联数组。读取的内置的接受-a 选项来指派一个单词列表
从标准输入到一个数组中读取。集和申报复古的方式显示数组的值
这使他们能够作为分配重复使用。

bash之数组的更多相关文章

  1. 使用bash关联数组统计单词

    使用bash关联数组统计单词 从bash 4开始支持关联数组,使用前需要声明,即 declare -A map map[key1]=value1 map[key2]=value2 map=([key1 ...

  2. Bash的数组

    Bash 2.x提供了创建一维数组的能力. 有多种方法创建,用内建命令declare -a或直接数组元素赋值. 向数组赋值时,如果不指定下标,下标自动从0开始,每次增加1. 数组的尺寸没有限制,下标也 ...

  3. Bash : 索引数组

    Bash 提供了两种类型的数组,分别是索引数组(indexed array)和关联数组(associative array).本文主要介绍索引数组的基本用法. 索引数组的基本特点 Bash 提供的数组 ...

  4. bash shell数组使用总结

    本文为原创博文,转发请注明原创链接:https://www.cnblogs.com/dingbj/p/10090583.html  数组的概念就不多说了,大家都懂! shell数组分为索引数组和关联数 ...

  5. UNIX/Linux系统管理技术手册(3)----bash 数组和算术运算

    复杂的数据结构和计算不是 bash 的特长.但它的确至少提供了数组和算术运算. 1.算术运算 所有的 bash 变量的值都是字符串,所以 bash 在赋值的时候并不区分数字 1 和 字符串 " ...

  6. Bash实用技巧:同时循环两个列表

    摘要: 你会学到一种原创的同时循环两个列表的方法.类似于Python或者Haskell的zip函数,非常简洁直观,效果如下: $ paste <( ) <( ) | while read ...

  7. bash{} 方法总结

    假设我们定义了一个变量为: file=/dir1/dir2/dir3/my.file.txt 我们可以用 ${ } 分别替换获得不同的值: ${file#*/}:拿掉第一条 / 及其左边的字串:dir ...

  8. Linux数组array基础

    Linux数组array基础[${a[*]}和$a的区别] Bash中,数组变量的赋值有两种方法: (1) name = (value1 ... valuen) 此时下标从0开始 (2) name[i ...

  9. ksh和bash区别

    一.实践证明,在AIX上用的是ksh,linux上是bash sh或bsh,全名是bourne shell.它最早出现,是标准shell.后两者都兼容它. ksh和bash后续加入了历史记录,交互特性 ...

随机推荐

  1. 一步一步学Silverlight 2系列(5):实现简单的拖放功能

    述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  2. JFreeChart教程(一)(转)

    JFreeChart教程(一) 分类: java Component2007-05-31 15:53 35268人阅读 评论(30) 收藏 举报 jfreechartimportdataset图形ap ...

  3. servlet简单例子1

    servlet简单例子1 分类: servlet jsp xml2012-04-18 21:54 3646人阅读 评论(3) 收藏 举报 servletloginjspaction浏览器 LoginS ...

  4. 【BZOJ 1233】 干草堆

    [题目链接] 点击打开链接 [算法] 这题有一个性质 : 位于顶层的干草堆可以满足宽度最小且高度最高 根据这个性质,用单调队列优化DP,即可 [代码] #include<bits/stdc++. ...

  5. robotframework 随机选中下拉框中的值

    示例脚本: click element id=provinceName #点击地区 省 wait until element is enabled xpath=.//*[@id='provinceNa ...

  6. python运行selenium时出现的一个错误总结

    1.SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame 场景:运用pan ...

  7. SAS基础 -- 逻辑库不存在问题解决

    SAS安装 -- 逻辑库不存在问题解决 1.SAS打不开,将系统时间改为系统提示错误的时间: 2.请在以下两个路径下,新建SASCFG文件夹(注意红色部分为你电脑SAS的安装路径)   D:\Prog ...

  8. bzoj 2792: [Poi2012]Well【二分+贪心】

    #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const ...

  9. Oracle异机恢复

    RMAN异机恢复注意事项:1.RMAN 异机恢复的时候,db_name必须相同. 如果说要想改成其他的实例名,可以在恢复成功后,用nid 命令修改. 实例名的信息会记录到控制文件里,所以如果在恢复的时 ...

  10. js实现打字效果

    <!DOCTYPE html> <html> <head> <meta charset='utf-8'> <title>js typing& ...