【发布时间】:2017-03-16 08:14:37
【问题描述】:
我正在尝试将结构化文件读入 Bash 中的关联数组。该文件在每一行中存储一个人名和一个人地址。例如:
person1|address1
person2|address2
...
personN|addressN
我正在使用下面的脚本。
#!/bin/bash
declare -A address
while read line
do
name=`echo $line | cut -d '|' -f 1`
add=`echo $line | cut -d '|' -f 2`
address[$name]=$add
echo "$name - ${address[$name]}"
done < adresses.txt
for name in ${!address[*]}
do
echo "$name - ${address[$name]}"
done
脚本正常运行。但是,在 FOR 循环中,当人名有空格时(例如“John Nobody”),我遇到了一些问题。我该如何解决这个问题?
【问题讨论】:
标签: arrays linux bash shell ubuntu