是否可以在不支持关联数组的情况下编译Bash 5?
我的同事测试了我的bash脚本,他给了我这个截图 他从brew安装了bash。是否可能在bash:5中declare没有-A选项 我和docker也查过了,bash:5必须有-A: 屏幕截图类似于bash:3输出,但没有: 是否可以在不支持关联数组的情况下编译bash:5是否可以在不支持关联数组的情况下编译Bash 5?,bash,macos,homebrew,configure,Bash,Macos,Homebrew,Configure,我的同事测试了我的bash脚本,他给了我这个截图 他从brew安装了bash。是否可能在bash:5中declare没有-A选项 我和docker也查过了,bash:5必须有-A: 屏幕截图类似于bash:3输出,但没有: 是否可以在不支持关联数组的情况下编译bash:5 是自制bash软件包的第页,我在Formula ruby安装脚本的./configure部分中没有找到任何特殊选项。要回答您的问题,您是否可以在不支持关联数组的情况下编译bash:有一个-启用数组变量,我强烈怀疑这会关闭对普通
是自制bash软件包的第页,我在Formula ruby安装脚本的./configure部分中没有找到任何特殊选项。要回答您的问题,您是否可以在不支持关联数组的情况下编译bash:有一个-启用数组变量,我强烈怀疑这会关闭对普通数组和关联数组的支持。据我所知,没有办法只关闭关联数组 更有可能的是,您的脚本以
#!/bin/bash
在macOS上,它是Bash3.2,没有关联数组;解决方法是使用
#!/usr/bin/env bash
相反。有关详细信息和更多备选方案,请参阅。要回答您的问题,您是否可以在不支持关联数组的情况下编译Bash:存在一个-enable数组变量,我强烈怀疑它会关闭对普通数组和关联数组的支持。据我所知,没有办法只关闭关联数组 更有可能的是,您的脚本以
#!/bin/bash
在macOS上,它是Bash3.2,没有关联数组;解决方法是使用
#!/usr/bin/env bash
相反。有关详细信息和更多备选方案,请参阅。可能是吗?如中所示,您的脚本有一个/bin/bash-hashbang行,对系统bash进行硬编码。也许你是对的,我知道在MacOS上默认的bash版本是3。我没有使用MacOS,但通过brew安装后系统Bash不会改变吗?路径中的第一个Bash将是新的Bash,通常位于usr/local/bin/Bash,但是/bin/Bash没有改变。谢谢您的解释,我补充道/usr/bin/env bash而不是/bin/bash和通过if[${bash_VERSINFO:-0}-lt 4]直接检查版本;然后,为了更大的可移植性:可能吗?就像在中一样,您的脚本有一个/bin/bash-hashbang行,对系统bash进行硬编码。也许你是对的,我知道在MacOS上默认的bash版本是3。我没有使用MacOS,但通过brew安装后系统Bash不会改变吗?路径中的第一个Bash将是新的Bash,通常位于usr/local/bin/Bash,但是/bin/Bash没有改变。谢谢您的解释,我补充道/usr/bin/env bash而不是/bin/bash和通过if[${bash_VERSINFO:-0}-lt 4]直接检查版本;然后,为了便于携带: