是否可以在不支持关联数组的情况下编译Bash 5? [重复]

问题描述 投票:0回答:1

此问题已经在这里有了答案:

我测试我的bash脚本的同事向我发送了此屏幕截图

bash5 without associative arrays

他从brew安装bashdeclare中是否可能没有-A选项?

我与docker进行了相同的检查,bash:5必须具有bash:5

-A

没有$ docker run -it bash:5 bash-5.0# declare -A declare -A BASH_ALIASES=() declare -A BASH_CMDS=() 时,屏幕截图类似于bash:3输出:

associative arrays support

是否可以在不支持关联数组的情况下编译$ docker run -it bash:3 bash-3.2# declare -A bash: declare: -A: invalid option declare: usage: declare [-afFirtx] [-p] [name[=value] ...]

[bash:5是自制软件中Here软件包的页面,在Formula ruby​​安装脚本的bash部分中没有发现任何特殊选项。

bash macos homebrew configure
1个回答
2
投票

要回答您的问题“您是否可以在不支持关联数组的情况下编译Bash”:有一个./configure configure option,我强烈怀疑它会关闭对普通数组和关联数组的支持。据我所知,没有办法仅关闭关联数组。

很有可能,您的脚本开头为

configure

在macOS上是没有关联数组的Bash 3.2;该修复程序将使用

--enable-array-variables

相反。有关详细信息和更多替代方法,请参见#!/bin/bash

© www.soinside.com 2019 - 2024. All rights reserved.