无法让我的数组一次在shell

时间:2018-02-28 02:03:43

标签: bash shell unix

遇到问题我的脚本不能遍历我的数组并且无法正确显示

#!/bin/bash
mispelledWords=$(cat $1|aspell list)
ARRAY=( $mispelledWords )

for((i=0; i<${#ARRAY[@]}; i++))
        do

        echo "'${ARRAY[i]}' is mispelled. Press 'Enter' to keep" 

        read -p 'this spelling, or type a correction here:' UserWord


        if [[ $UserWord == "" ]]; then

        echo ${ARRAY[i]} >> .memory
else 
        UserWordsArray[i]=$UserWord
        mispelledArray[i]=${ARRAY[i]}
        echo $mispelledArray[i]
        fi
done
echo    "MISPELLED:                     CORRECTIONS"

for ((i=0; i<${#UserWord[@]}; i++))
do
        echo "${mispelledArray[i]}                              ${UserWordsArray[i]}"
done

在数组应该在for循环中迭代的那一点,它只存储一个值,并且当试图在else语句中显示它时

echo $mispelledArray[i]

它只显示通过另一个文本文件传递到程序中的一个值。 任何帮助都会非常有帮助

0 个答案:

没有答案