回答:
ほぼ。ループの前に事前設定できるように、おそらく戻り値を変数として保存する方が良いでしょう。それ以外の場合は、最後に実行したコマンドの影響を受けます。
またsleep
、そこにスリングを入れて、リスポーンが早すぎるのを防ぐこともできます。
RET=1
until [ ${RET} -eq 0 ]; do
ncftpput -DD -z -u user -p password remoteserver /remote/dir /local/file
RET=$?
sleep 10
done