bash脚本中的Perl哈希等效? [复制]
Posted
技术标签:
【中文标题】bash脚本中的Perl哈希等效? [复制]【英文标题】:Perl hash equivalent in bash scripting? [duplicate] 【发布时间】:2012-03-23 23:13:29 【问题描述】:可能重复:How to define hash tables in bash?
bash 中的 Perl 哈希等价物? 请告诉我。
以下代码在 korn shell 中完美运行,但在 bash [3.2 版本] 中无法正常运行,排版出错。
#!/bin/ksh
typeset -A newmap
name="mandar"
id="111515"
newmap["name"]=$name
newmap["id"]=$id
echo "$newmap["id"]"
【问题讨论】:
以下代码在 korn shell 中运行良好,但在 bash [3.2 版本] 中无法正常运行,排版出错。#!/bin/ksh typeset -A newmap name="mandar" id="111515" newmap["name"]=$name newmap["id"]=$id echo "$newmap["id"]"
【参考方案1】:
如果您正在运行 Bash 4 或更高版本,请使用 declare -A
而不是 typeset -A
。我对其进行了测试,它可以正常工作。
或者,您可以测试 bash 并创建一个别名,以便您可以在未修改的情况下运行脚本的其余部分(可能):
alias typeset=declare
【讨论】:
@mandy:你说得对,我忘了说这适用于 Bash 4 及更高版本。我的重击 4.2。以上是关于bash脚本中的Perl哈希等效? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
Perl 的 require 命令的 java 等效项是啥? [关闭]