シェルスクリプトのSSHセッションでwhileループを作成するには?

シェルスクリプトのSSHセッションでwhileループを作成するには?

SSHセッションでwhileループを実行したいと思います。

これはlocalhostではうまく機能しますが、sshセッションで試してもループ変数や他の変数の値も取得しません。

原因は何ですか?解決策は何ですか?

for hostname in host1 host2 <<EOF
do
count=$(echo $destinationPath|grep -o "/"|wc -l)
echo "dirCount=$dirCount"
path="/"
i=1;
while [ $i -lt $count ]
do
        echo "i=$i";
        i=$(expr $i + 1)
        dir=$(echo $destinationPath|cut -d'/' -f$i);
        echo "dir=$dir";
        path=$path$dir/
        echo "path=$path";
done
exit
done
EOF

関連情報