文字列を含む配列${myarr[@]}
があります。${myarr[@]}
基本的に行で構成され、各行は単語で構成されています。
world hello moon
weather dog tree
hello green plastic
hello
この配列での出現回数を数える必要があります。どうすればいいのですか?
代替 (ループなし):
grep -o hello <<< ${myarr[*]} | wc -l
外部プログラムは必要ありません:
count=0
for word in ${myarr[*]}; do
if [[ $word =~ hello ]]; then
(( count++ ))
fi
done
echo $count
これを試して:
for word in ${myarr[*]}; do
echo $word
done | grep -c "hello"