ファイル内の単語数を数え、ファイル内のすべての単語を連想配列のキーとして使用しようとしています。値は単語の出現回数である必要があります。
while read line; do
((occs["$line"]=${occs[$line]}+1))
done < $predfile
ここでの問題は、ファイルに * (スター) が含まれる可能性があることです。このスターを単語として扱いたいと考えています。ただし、単語の出現を出力したい場合は
for i in "${!occs[@]}"
do
echo "$i : ${occs[$i]}" >> $resultfile
done
その後、bash はスターに到達すると ${occs[*]} を出力しようとし、「occs[*]: bad array subscript」が表示されます。これを処理するために if ステートメントを使用できますが、配列キーをエスケープされたキーで埋めることができるかどうかを知りたいです。