bash 中数组的动态变量名称

2023-12-01

我有一个名为“循环”的数组。

对于“循环”中的每个元素,我想创建一个数组,其名称包含当前元素的文本。

然后我想循环遍历每个新数组并打印每个数组中的每个元素。


这个帖子似乎对变量有一个很好的解决方案,但我不知道如何使其适用于数组。


我的脚本

#!/bin/bash
loop=(
first
second
third
)

for word in "${loop[@]}"    
do
        declare "${word}_holder=( hello world )"
        var="${word}_holder"
        echo "$var"
        for i in "${!var}[@]"
        do
                echo "$i"
        done
done

电流输出

first_holder
( hello world )[@]
second_holder
( hello world )[@]
third_holder
( hello world )[@]

所需输出

first_holder
hello
world
second_holder
hello
world
third_holder
hello
world

for word in "${loop[@]}"; 
do 
   name="${word}_holder";
   declare -a "$name"; 
   declare -n arr="$name";
   echo $name;
   arr=(hello world);
   arr_ref="$name[@]";
   for w in "${!arr_ref}";
   do 
      echo $w; 
   done; 
done;                             

first_holder                                                                                                                              
hello                                                                                                                                     
world                                                                                                                                     
second_holder                                                                                                                             
hello                                                                                                                                     
world                                                                                                                                     
third_holder                                                                                                                              
hello                                                                                                                                     
world     

当然,如果您不打算引用动态生成的数组(first_holder 等),那么执行所有这些操作都是没有意义的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

bash 中数组的动态变量名称 的相关文章

  • 如何发布数组多维角度js

    我在 angularjs 中有一个数组 示例如下 scope order qty 20 scope order adress Bekasi scope order city Bekasi 这个数组可以用这个代码发布 http method
  • 检查 Git 中是否需要 pull

    如何检查远程存储库是否已更改并且需要拉取 现在我使用这个简单的脚本 git pull dry run grep q v Already up to date changed 1 但它比较重 有没有更好的办法 理想的解决方案是检查所有远程分支
  • SVN 提交后挂钩在提交后不会运行

    我的服务器上设置了 SVN 存储库 并且遇到提交后问题 我在 iMac 上使用 SmartSVN 作为客户端 我通过 SmartSVN 的 ssh svn 连接 我能够成功连接到 SVN 并对其进行更改 但从 SVN 客户端提交后 我的提交
  • 在 bash 脚本中检测鼠标点击

    我想知道如何在后台运行 bash 脚本 每当用户单击鼠标时该脚本都会执行某些操作 即运行脚本或命令或其他任何内容 即使终端关闭 我也希望它继续运行 有任何想法吗 谢谢 如果您使用的是X11 您可以尝试xdotool捕获鼠标事件 它会是这样的
  • 通过命令行安装“Compass”收到错误“extconf 失败,退出代码 1”

    找不到这个问题的答案 运行 OS X Yosemite Beta v2 遵循指南针安装指南时 请确保您的 gem 是最新的 gem update system Then run gem install compass 假设您的安装因与我相同
  • 使用 python 脚本更改 shell 中的工作目录

    我想实现一个用户态命令 它将采用其参数之一 路径 并将目录更改为该目录 程序完成后 我希望 shell 位于该目录中 所以我想实施cd命令 但需要外部程序 可以在 python 脚本中完成还是我必须编写 bash 包装器 Example t
  • array_merge 更改键

    我得到以下数组 arr array 6 gt Somedata 7 gt Somedata1 8 gt Somedata2 问题是 当我使用array merge array Select the data arr 它确实将数组键更改为 A
  • 递归获取数组的键并创建下划线分隔的字符串

    现在我得到了一个包含某种信息的数组 我需要从中创建一个表 例如 Student Address StreetAddress gt Some Street StreetName gt Some Name Marks1 gt 100 Marks
  • 如何从数组中提取特定元素?

    如果我有一个数组a 1 2 3 4 5 6 7 8 9 10 我想要这个数组的一个子集 第 1 个 第 5 个和第 7 个元素 是否可以通过简单的方式从该数组中提取这些内容 我在想这样的事情 a 0 4 6 1 5 7 但这行不通 还有一种
  • Jenkins:如何在 Windows 从机中执行 shell 脚本

    我有一个 Windows 从机 安装了 bash 我正在尝试在其上运行 shell 脚本作为预构建步骤 关于我如何做到这一点有什么想法吗 您需要使用脚本作为参数来运行 bash bash yourscript
  • Android:如何在播放媒体(mp3)时在特定毫秒内显示文本

    我正在尝试做一个类似卡拉 OK 的应用程序 我想在某一毫秒到来时显示一个或多个单词 例如 1148 毫秒 gt 打印 尼古拉斯 1826 毫秒 gt 打印 是 2766 毫秒 gt 打印 旧 ms gt 显示 这是我的代码 包 com ex
  • 在 C 中将字符追加到字符数组

    我想将一个字符附加到代表字符串的字符数组中 我正在使用结构来表示字符串 struct String char c int length int maxLength String realloc弄乱了我的数组 当我打印字符串时 它会从内存中打
  • 交换关联数组中的两个项目

    Example arr array apple gt sweet grapefruit gt bitter pear gt tasty banana gt yellow 我想调换一下柚子和梨的位置 这样数组就变成了 arr array ap
  • 最小化代表性整数的误差之和

    Given n integers between 0 10000 as D1 D2 Dn where there may be duplicates and n can be huge I want to find k distinct r
  • 在 Bash 中监控 tomcat,直到它完成部署 war 或应用程序

    怎么可能Tomcat在 bash 脚本中进行监控以检测它是否完成了战争或应用程序的部署 应用场景 Tomcat 开始于systemd Tomcat 开始于catalina sh 使用 Tomcat 管理器 Tomcat从Eclipse启动
  • 为使用 SSH.NET SshClient.CreateShellStream 执行的命令 (sudo/su) 提供子命令

    我正在尝试使用 Renci SSH NET 从 C Web 应用程序连接到远程 Linux 服务器并执行 shell 脚本 我想一个接一个地运行脚本 但不知道如何运行脚本并读取输出并将其存储在标签中 我已经尝试了下面的代码 但无法一行接一行
  • 如何将特定范围内的标量添加到 numpy 数组?

    有没有一种更简单 更节省内存的方法可以单独在 numpy 中执行以下操作 import numpy as np ar np array a l r ar c a a 0 l ar tolist a r 它可能看起来很原始 但它涉及获取给定数
  • 设置 git 别名,但调用它会给出“找不到命令”

    我想在 git 中设置一个别名来计算存储库中的总行数 因此我进入 Git Bash 并输入以下内容 git config global alias linecount ls files z xargs 0 wc l 我输入命令后 没有出现错
  • Repa 数组上的并行 mapM

    在我最近的work https github com bgamari mixture model with Gibbs sampling 我一直在充分利用RVar http hackage haskell org packages arch
  • Bash 中单行 while 循环的语法

    我无法找到分号和 或大括号的正确组合 我想这样做 但作为命令行中的一句 while 1 do foo sleep 2 done while true do foo sleep 2 done 顺便说一句 如果您在命令提示符下将其输入为多行 如

随机推荐

  • 从 WordPress 全局搜索结果中排除 woocommerce 产品类别

    我使用此代码从 wordpress 搜索结果中排除某些帖子类别 function SearchFilter query if query gt is search query gt set cat 709 710 614 return qu
  • 我最多可以更改按钮的背景多少次?

    所以 我试图用我传递的颜色和白色之间的颜色来闪烁按钮 在代码崩溃后 它似乎只闪烁了很多次 我尝试过以不同的闪烁速率来实现闪烁 并且它 它有时还会破裂吗 在 a 中 我有类似 Background color rgb 255 0 0 的字符串
  • 如何将emacsclient背景设置为Emacs背景?

    我有 在我的 emacs 中 set background color 101416 set foreground color f6f3e8 我有 2 个绑定 alias ex emacsclient nw alias ec emacscl
  • 转储 Spring 启动配置

    我们的运维人员希望在应用程序启动时将 Spring boot 配置 即所有属性 转储到日志文件中 我认为这可以通过使用注释 ConfigurationProperties 注入属性并打印它们来完成 问题是是否有更好的或内置的机制来实现这一目
  • 创建 Sql Server 身份验证帐户?

    我想创建一个Sql Server身份验证帐户 而不是数据库或帐户中的用户 我的意思是我想创建一个帐户 以便在启动 sql 服务器时使用 SQL 事务或使用 C 从中登录 据我所知 您只能使用两种模式 Windows 或 SQL Server
  • 重写条件以比较 Request_URI 中的顶级目录

    我的网站上有几个客户 每个客户的网站设置基本相似 这些客户帐户的文件夹是出于组织目的而设置的 位于 mydomain com client sampleclient mydomain com client anotherclient etc
  • Echo Return构造方法;

    不起作用 我不明白如果你试图在构造函数上返回值 你为什么要研究 OOP OOP 的重点是拥有执行许多任务的对象 如果您想返回字符串 数组 资源 那么 OOP 不适合您 构造函数用于在对象初始化的前期阶段启动代码 它允许您在用户使用对象之前执
  • Bootstrap、Prototype Js 和 Jquery 的冲突

    经过 7 天的搜索并尝试了不同的解决方案后 但没有成功 我想问 我有一个带有原型 js protaplasm scriptaculous jquery 和 Jquery ui 的页面 它与 jquery 完美配合 没有冲突 直到我最近用 B
  • AttributeError:“系列”对象没有属性“to_numeric”

    我正在尝试按值对数据框进行排序 收到 AttributeError Series 对象没有属性 to numeric 版本 0 20 3 因此数字应该可以工作 但不行 请帮忙 import pandas as pd tables pd re
  • HTML DOM:哪些事件不会冒泡?

    大多数事件在所有浏览器中都会冒泡 但是 我知道在 Internet Explorer 中 提交 事件不会冒泡 还有哪些不冒泡的事件 HTML 框架 对象 load unload scroll 除了文档上的滚动事件必须冒泡到窗口 HTML 表
  • 获取令牌失败`AADSTS700051`

    我刚刚设置了一个Azure Active Directory租户和我有一个使用 oAuth2 的应用程序Implicit流动 我收到以下错误 error AADSTS700051 response type token is not ena
  • JOIN 子查询

    我想在将两列与其中一个表上的 id 连接后 对两个表执行简单的联接 第一步 SELECT cars hhid cars vmid FROM cars 现在我想将此结果与另一个表 表2 进行比较 新结果应该是 table1 汽车 中与 tab
  • HTML5 iFrame 无缝属性

    在 HTML5 中 iframe 具有 无缝 等新属性 可以删除边框和滚动条 我已经尝试过 但似乎不起作用 我仍然可以看到滚动条和边框 我使用 Google Chrome 作为浏览器 这是我的代码 知道为什么它不起作用吗 还有一个问题 是否
  • 根据构建类型通过 Gradle 设置 Android.mk 标志

    我需要在里面设置一个标志Android mk文件告诉 C 代码是否处于调试模式 LOCAL MODULE auth LOCAL SRC FILES auth c LOCAL CFLAGS DDEBUG MODE 0 LOCAL EXPORT
  • 图标未显示在 Qt 主窗口中

    我的 Qt 应用程序包含一个主窗口 我将资源添加到项目中 并向资源添加了一个图标 在主窗口源文件中 我使用以下行将图标加载到主窗口 this gt setWindowIcon QIcon img Icon ico 当我从 Qt 创建者运行应
  • 如何在 Python 3 中迭代模块列表并调用它们的方法

    Goal 能够将文件放入 模块 文件夹并从每个文件调用一组通用的方法 变量 如果所有模块都有公共方法 变量 是否应该将模块初始化为静态类 我的项目文件夹树 client init py modules init py foo py bar
  • 如何创建 URL 缩短器? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 Locked 这个问题及其答案是locked因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 我想创建一个 URL 缩短服务 您可以在输入字段中写入长 URL 该
  • MVC Razor 视图 Intellisense 在 VS 2013/2015/2017 中损坏

    我有一个用 VS2010 编写的现有项目 在 VS2010 中加载时可以完美运行 当我在 VS2013 中加载同一个项目时 MVC Razor 视图包含很多错误 就好像视图文件夹中缺少配置文件一样 它似乎没有使用根目录和视图文件夹中的配置文
  • 时区和本地化

    目前 我将所有时间存储为 UTC 以便当我开始将多个站点和服务器联机时 事情会变得更容易 翻译的时候就出现了问题date and datetime对象在我的模板中以及接受用户输入时转换为字符串 对于采用太平洋标准时间 PST 的人来说 下午
  • bash 中数组的动态变量名称

    我有一个名为 循环 的数组 对于 循环 中的每个元素 我想创建一个数组 其名称包含当前元素的文本 然后我想循环遍历每个新数组并打印每个数组中的每个元素 这个帖子似乎对变量有一个很好的解决方案 但我不知道如何使其适用于数组 我的脚本 bin