`
tomhibolu
  • 浏览: 1431459 次
文章分类
社区版块
存档分类
最新评论

Linux数组array基础【${a[*]}和$a的区别】

 
阅读更多

网摘:大家没事的时候可以看看,O(∩_∩)O~

Bash中,数组变量的赋值有两种方法:

  (1) name = (value1 ... valuen) 此时下标从0开始

  (2) name[index] = value

  下面以一个简单的脚本来说明,脚本内容如下:

  #!/bin/bash

  #定义数组

  A=(a b c def)

  #把数组按字符串显示输出

  echo ${A[@]}

  #屏幕显示:a b c def

  #数组的长度表示${#A[*]}

  len=${#A[*]}

  echo ${#A[*]}

  #屏幕显示:4

  #改变数组元素的值

  A[3]='vivian'

  echo ${A[*]}

  #屏幕显示:a b c vivian

  #循环输出数组元素

  i=0

  while [ $i -lt $len ]

  do

  echo ${A[$i]}

  let i++

  done

  #屏幕输出:

  # a

  # b

  # c

  # vivian

  #循环输出数组元素的另一种写法,注意,在条件中,引用变量一定要用双引号 ,否则报错

  for (( j=0; j<"$len"; j=j+1 ))

  do

  echo ${A[$j]}

  done

  #循环输出数组元素的另一种写法,注意,${A[*]}不能写成$A ,$A默认是第一个元素,

如果A="a b c ded",就可以写$A

  for value in ${A[*]}

  do

  echo $value

  done

ps:

在a=(1 2 3 4)和a="1 2 3 4"中,表示所有元素的话,前者只能用${a[*]}或者${a[@]}来表示

而后者还可以用${a[*]}或者${a[@]}或者$a来表示,在a=(1 2 3 4)中$a只是表示第一个元素1

假如a="1 2 3 4"

array=($a)就相当于a=(1 2 3 4),不信你可以试试echo ${array[@]}

上面的例子还可以改写成以下内容:

  for value in $A

  do

  echo $value

  done

分享到:
评论

相关推荐

    linux shell实现求一个多维数组中的最大和最小值

    本文将详细介绍如何使用 Linux Shell 来找出一个包含多个一维数组的多维数组中的最大值和最小值。 #### 核心知识点: 1. **Shell 数组的定义与使用** 2. **Shell 脚本中的循环结构** 3. **条件判断与变量赋值** 4....

    Linux Shell脚本系列教程(六):数组和关联数组.docx

    Linux Shell脚本系列教程(六):数组和关联数组 本文主要介绍了 Linux Shell 脚本系列教程(六):数组和关联数组,涵盖了数组和关联数组的定义、打印、索引、元素操作等内容。 一、数组和关联数组 在 Linux ...

    Linux Shell 数组的创建及使用技巧

    在Linux Shell脚本编程中,数组是一种非常实用的数据结构,它可以存储多个相关的数据项,并且在处理批量数据或执行复杂的逻辑时发挥重要作用。本篇文章将深入探讨Linux Shell数组的创建、读取、赋值以及一些特殊的...

    PHP与MySQL程序设计

    - **在数组头/尾添加元素**:使用`array_unshift()`和`array_push()`。 - **从数组头/尾删除元素**:使用`array_shift()`和`array_pop()`。 - **定位数组元素** - **搜索数组**:查找特定值的存在与否。 - **...

    动态数组的一个小例子

    在这个例子中,`DynamicArray`结构体包含了数组的指针、当前大小和最大容量。`initArray()`函数初始化这个结构体,`insert()`函数负责在数组末尾插入新的元素,如果当前容量不足,会通过`realloc()`进行扩展。`clear...

    Linux Shell 数组建立及使用技巧

    在Linux系统中,Shell脚本是一种强大的自动化工具,它提供了丰富的功能,包括数组操作。数组在Shell编程中尤其重要,因为它允许我们存储和处理多个相关的数据。以下是对Linux Shell数组建立及使用技巧的详细说明: ...

    shell脚本编程之数组

    数组复制可以通过简单的赋值操作来实现,但需要注意的是,使用`$@`和`$*`的区别。 - **使用`$@`**:每个元素被视为独立的字符串。 - **使用`$*`**:所有元素被视为单个字符串。 #### 六、从数组中删除元素 使用`...

    PERL语言编程(入门级的好书)

    - **复数变量**:用于存储多个值,分为数组(如`@array`)和哈希表(如`%hash`)两种形式。 - **数据结构**:Perl支持简单数据结构(如数组和哈希)以及复杂数据结构(如嵌套数组或哈希)。 2. **操作符**: - *...

    linux shell数组深入学习理解

    本文将深入探讨Linux Shell数组的使用方法,包括声明、赋值、访问和遍历数组,以及如何在实际场景中应用数组,如处理环境变量。 首先,Shell数组在Bash中是默认支持的,尽管它只是一维数组,但可以包含无限数量的...

    PHP用法in_array函数检查数组中是否存在某个值_.docx

    在本例中,由于`'ph'`是一个数组,而`$a`中的元素包括一个包含'p'和'h'的数组,因此第一句输出"`'ph' was found`"。尽管字符串'o'与数组中的'单个字符'元素'o'相匹配,但`in_array()`在严格模式下仍然能找到它,因此...

    php语发基础

    - 可以通过函数如`array()`来创建数组。 4. **循环结构**: - `for`循环:适合已知循环次数的情况。 - `while`循环:在条件为真时重复执行代码块。 - `do...while`循环:至少执行一次循环体,然后检查条件。 5. ...

    linux c面试宝典

    在Linux C面试中,了解和掌握基本的编程概念和技术是至关重要的。以下是一些关键的知识点: 1. **数组和字符串**: - 在C语言中,数组是一种数据结构,可以存储固定数量相同类型的元素。例如,`char array[5]={'1'...

    通过实例深入理解linux shell数组

    这些实例和操作方法对于理解和使用Linux Shell中的数组至关重要。掌握这些技巧,你就能更加高效地编写Shell脚本,处理复杂的数据集合。无论是进行数据分析、系统管理还是自动化任务,数组都是不可或缺的工具。通过...

    r语言入门教程

    #### 五、数组和矩阵 **5.1 数组** - **定义**: 多维的向量。 - **创建**: 使用`array()`函数。 **5.2 数组的索引和数组的子块** - **索引**: 使用下标来访问元素。 - **子块**: 通过切片来获取数组的一部分。 ...

    php in_array() 检查数组中是否存在某个值详解

    - **数组函数**:PHP 提供了丰富的数组函数,如 `array_merge()` 用于合并数组,`array_filter()` 用于过滤数组元素,`array_keys()` 用于获取数组的键名,`array_flip()` 用于交换数组的键和值,以及 `array_search...

    php试卷A高质量含答案.doc

    本资源是PHP试卷A高质量含答案,包含了PHP基础知识、变量、函数、数组、文件操作等方面的知识点。通过本资源,读者可以了解PHP语言的基本概念和应用。 1. PHP基础知识: PHP是一种服务器端脚本语言,主要用于Web...

    Linux shell数组与关联数组的用法实例

    本篇将详细讲解Linux Shell中的两种数组类型:序列数组和关联数组,并提供实例来帮助理解它们的使用方法。 1. **关联数组** 关联数组,也称为哈希表或字典,允许我们使用任意字符串作为索引来存储和检索值。在...

    Linux Shell脚本系列教程(六):数组和关联数组

    在Linux Shell脚本编程中,数组是一个非常关键的特性,它允许我们存储和处理一组相关的数据,而不是单一的变量。数组分为两种类型:普通数组和关联数组。 **一、数组和关联数组** 普通数组在Shell中是通过索引来...

Global site tag (gtag.js) - Google Analytics