迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 >

Bash 中的多维数组

作者:迹忆客 最近更新:2023/05/16 浏览次数:

多维数组对于任何程序都是非常重要的元素。 它主要用于创建数据的表视图和许多其他用途。

本文演示如何创建二维数组。 此外,我们将通过必要的示例和解释来讨论该主题。

我们将在这里讨论两种不同的方法。


在 Bash 中声明多维数组的基本方法

这是创建多维数组的最基本方法。 在下面的示例中,我们将创建一个非常基本的二维数组。

下面是我们示例的代码。

ArrayOfArray_1=("Alen" "24")
ArrayOfArray_2=("Walker" "31")
MainArray=(
  ArrayOfArray_1[@]
  ArrayOfArray_2[@]
)

ArrayLength=${#MainArray[@]}
for ((i=0; i<$ArrayLength; i++))
do
  name=${!MainArray[i]:0:1}
  age=${!MainArray[i]:1:1}
  echo "Name : ${name}"
  echo "Age : ${age}"
done

上面的代码显示我们声明了两个不同的数组,名为 ArrayOfArray_1 和 ArrayOfArray_2。 之后,我们声明了我们的主数组,其元素是我们最近声明的这两个数组。

然后我们计算了一个循环的数组长度。 在循环内部,我们通过索引主数组从这两个子数组中提取数据。

最后,我们回显最终结果。 执行脚本后,您将获得如下所示的输出。

Name : Alen
Age : 24
Name : Walker
Age : 31

在 Bash 中使用关联数组声明二维数组

这个方法有点复杂。 此方法将讨论一个名为关联数组的特殊 Bash 脚本数组。

关联数组是一种特殊的数组,可以将字符串值存储为键或索引。 它类似于其他编程语言。

声明关联数组的一般语法是 declare -A ArrayName。

下面的示例将创建一个包含五行六列的二维数组。 下面是我们示例的代码。

declare -A Array2D
RowNum=5
ColumnNum=6

for ((i=1;i<=RowNum;i++)) do
    for ((j=1;j<=ColumnNum;j++)) do
        Array2D[$i,$j]=$RANDOM
    done
done

f1="%$((${#RowNum}+1))s"
f2=" %9s"

printf "$f1" ''
for ((i=1;i<=RowNum;i++)) do
    printf "$f2" $i
done
echo

for ((j=1;j<=ColumnNum;j++)) do
    printf "$f1" $j
    for ((i=1;i<=RowNum;i++)) do
        printf "$f2" ${Array2D[$i,$j]}
    done
    echo
done

在上面的示例中,我们声明了一个名为 Array2D 的关联数组。

之后,我们创建了两个变量并为它们分配了一个整数值。 此整数值指定行数和列数。

然后我们创建了一个嵌套循环,用随机数填充数组。

现在我们完成了数组的声明和组织。 是时候看看我们的二维数组是什么样子了。

我们通过使用一些循环来做到这一点,如代码所示。 当您执行上面的脚本时,您将看到如下所示的输出。

           1         2         3         4         5
 1     16700      5241      2599     24330      1662
 2     23264     19557     10425     13413     25606
 3     17987      4199     13598     23897     26734
 4     24420     27830     24855      8165     13531
 5     15495     18790     13347     12947     11826
 6     23458     22838       137     32454     32441

本文中的所有代码都是用 Bash 编写的。 它只会在 Linux Shell 环境中工作。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Bash 脚本中执行变量中的命令

发布时间:2023/05/18 浏览次数:106 分类:操作系统

本篇文章是关于将 Bash 命令存储在一个变量中,然后直接从这个变量中执行它。 首先,我们将讨论执行变量中包含的命令的多种方法,然后是几个脚本示例。

Bash 变量相乘

发布时间:2023/05/18 浏览次数:50 分类:操作系统

本篇文章介绍如何在 Bash 中将两个变量相乘。在 Bash 中乘以变量。将两个变量相乘在 Bash 中是一个简单的操作。

Bash md5sum 命令

发布时间:2023/05/18 浏览次数:197 分类:操作系统

本篇文章介绍如何在 Bash 中使用 md5sum 命令。Bash md5sum 命令。md5sum 命令打印给定文件的 32 字符和 128 位校验和。

在 Bash 中排序数组

发布时间:2023/05/18 浏览次数:150 分类:操作系统

对数组进行排序对于任何编程语言来说都是一项非常常见的任务。 在 Bash 脚本中,我们还可以通过两种不同的方式完成此任务。

如何在 CentOS 中获取 IP 地址

发布时间:2023/05/04 浏览次数:109 分类:操作系统

这篇简短的文章是对 CentOS 的一个简短介绍,然后简要讨论了我们如何使用命令行界面 (CLI) 在 CentOS 中获取服务器 IP 地址。

在 Linux 中更新 YUM

发布时间:2023/05/04 浏览次数:86 分类:操作系统

本文介绍了 Linux 中的 yum update 命令。本文将教我们如何在 Linux 中更新 YUM,以及如何在 Linux 系统上安装、更新、删除、查找和管理包。

在 Linux 中安装 Deb 文件

发布时间:2023/05/04 浏览次数:133 分类:操作系统

本文介绍如何在 Linux 中安装 deb 文件。在这篇 Linux 文章中,我们将学习如何在 Linux 系统上安装 .deb(Debian 软件包)文件。 我们还将看到如何在安装后删除 .deb 文件。

Linux 中的 lsof 命令

发布时间:2023/05/04 浏览次数:84 分类:操作系统

在这篇 Linux 文章中,我们将了解 Linux 操作系统中的 lsof 命令。 我们将看到如何在 Linux 中将此命令用于不同目的。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便