我得到以下输出:
Pushkin - 100500 Gogol - 23 Dostoyevsky - 9999
以下脚本的结果如下:
for k in "${!authors[@]}" do echo $k ' - ' ${authors["$k"]} done
我想要的是得到如下输出:
Pushkin - 100500 Dostoyevsky - 9999 Gogol - 23
这意味着关联数组中的键应按值排序.有没有简单的方法呢?
您可以按照第三个字段的数字顺序顺序排列输出:
for k in "${!authors[@]}" do echo $k ' - ' ${authors["$k"]} done | sort -rn -k3
有关sort命令的更多信息,请参阅sort(1).这只是排序输出行;我不知道有什么办法直接在bash中排序数组.
我也看不到上面的内容可以给你的名字(“Pushkin”等)作为数组键.在bash中,数组键总是整数.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。