如何在 Bash 中使用 namerefs?

How to use namerefs in Bash?

如何在 Bash 中使用 namerefs?我是初学者,我不知道自己做错了什么。

我的代码是这样的:

#!/bin/bash

declare -n foo="bar"

当我 运行 它时,我立即收到以下错误:

declare: -n: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...]

我在网上找不到任何解决这个问题的方法。

已解决!我只需要将我的 Bash 升级到最新版本(对我来说是 5.0.16),它现在工作得很好。真的很奇怪,最新的 macOS 附带了一个令人痛苦的过时版本(对我来说,3.2.57)。