在 bash v4 下无法识别声明

在 bash v4 下无法识别声明

我正在尝试使用 bash 版本 4 中的新数组/哈希功能,但是当我尝试“声明”变量时,出现错误。

$ bash --version
GNU bash, version 4.4.0(1)-release (x86_64-apple-darwin15.6.0)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

$ declare -A hello
-bash: declare: -A: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...]

$ declare
...
rvm_warn ()
{
    if rvm_pretty_print stdout; then
        printf "%b" "${rvm_warn_clr:-}$*${rvm_reset_clr:-}\n" 1>&2;
    else
        printf "%b" "$*\n" 1>&2;
    fi
}
...

当我输入“declare”时,它看起来像 ruby​​ 代码。我包括一个非常当我简单地输入“declare”时,会出现一个小片段。我确实安装了 RVM。有什么想法可以解释为什么我不能正确使用“declare”吗?

答案1

这些选项区分大小写,并且-A不是有效选项(如其显示的使用列表所示 - [-afFirtx])。

改用-a

相关内容