在 ftp bash 会话中睡眠

Sleep in an ftp bash session

我正在自动启动一个 FTP 会话,

ftp -inv globe.forward.my_machine <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
cd petitions
ls
put my_petition.txt
sleep 10
cd ../data
get my.tar
quit
END_SCRIPT

它几乎总是有效,但当它无效时,我怀疑这可能是由于启动请愿书和收到答复的时间滞后所致。因此,我引入了一个 sleep 命令来确保文件可用,但我得到了 "?Invalid command"。如何在 bash 的 ftp 会话中强制休眠?

ftp 中没有 sleep 命令。

一个简单的解决方案是在 shell 中执行 sleep。使用!暂时逃到shell:

!sleep 10

参见ftp man page

相关问题:In a shell script, how to suspend and resume FTP session without losing connection?