这是我的脚本:
#!/usr/bin/expect
spawn /usr/bin/sftp user@place
expect "password:"
send "mysecret\n"
expect "sftp>"
send "mget dir/*.csv\n";
expect "sftp>"
send "quit\n"
它开始下载,但几秒钟后,它发送退出命令并在下载完成之前退出程序。
我成功让它停止的唯一方法是输入一个“交互”命令,但因为我想将它作为一个 cron 作业运行,我不想只产生最终坐着的进程。
有没有办法做到这一点?
编辑:
有人会问我为什么没有密钥设置……这是供应商允许我使用的唯一方法。