gpt4 book ai didi

bash - bash中的关联数组不在循环内存储值

转载 作者:行者123 更新时间:2023-11-29 09:49:58 25 4
gpt4 key购买 nike

<分区>

这是我的$a输出:

[root@node1 ~]# echo "${a}"
/dev/vdc1 /gfs1
/dev/vdd1 /elastic
mfsmount /usr/local/flytxt

我必须将它们存储在关联数组 fsmounts 中,第一列作为键,第二列作为值。
这是我的代码:

declare -A fsmounts
echo "$a" | while read i ; do key=$(echo "$i" | awk '{print $1}'); value=$(echo "$i" | awk '{print $2}');fsmounts[$key]=$value; done;

但是当我尝试使用

在循环外打印时
[root@node1 ~]# echo ${fsmounts[/dev/vdb1]}

空白是输出。我认为关联数组 fsmounts 实际上并不存储值。请帮助我。

但实际上我可以在循环内回显 fsmounts[$key]。看这个:

echo "$a" | while read i ; do key=$(echo "$i" | awk '{print $1}'); value=$(echo "$i" | awk '{print $2}');fsmounts[$key]=$value; echo ${fsmounts[$key]};  done;
/gfs1
/elastic
/usr/local/flytxt

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com