我编写了一个小脚本,用于将文件从 FTP 下载到连接到 Raspberry Pi 3B+ 的外部驱动器。我用来rsync
下载我的文件。以下是脚本:
下载.sh:
#!/bin/bash
sudo rync -P -r -e ssh user@host:/path/* /local/directory
为了处理密码,我有password.sh:
#!/usr/bin/expect
spawn ./download.sh
expect "password: "
send -- "mypassword"
expect eof
当我运行时password.sh
,它会登录到 FTP 并开始文件传输,但 5-6 秒后程序终止,没有任何错误,并且文件下载停止。有没有办法让脚本保持运行直到所有下载完成?任何帮助将非常感激。
答案1
默认超时时间为 10 秒,但可以通过命令设置,例如 30 秒
set timeout 30
。无限超时可以由值指定-1
。
你需要像set timeout -1
以前一样expect eof
。