【Shell】パイプでつなげた while 内の変数を外で使いたい場合

find コマンドを使ってファイル検索をしてから、パイプの後に while を使うと、

cd "【指定のフォルダ】"
list1=''
find . -type f -maxdepth 1 -iname "*.jpg" |while read -r file
do
    list1="${list1},${file}"
done
echo $list1

while 内の変数の値が外に引き継がれなかった。

なので、以下のように書くと いけた。

cd "【指定のフォルダ】"
list1=''
while read -r file;
do
    list1="${list1},${file}"
done <<EOF
$(find . -type f -maxdepth 1 -iname "*.jpg")
EOF
echo $list1

参考サイト

解決した方法 # 4 を参照。