我们如何使用expect脚本或任何其他脚本递归地将文件复制到远程服务器?
约束。
1.我们无法限制将要复制的文件数量
2.文件大小可以是1mb或高达10mb。
我尝试使用以下脚本。但它只能传输4或5个文件。 (我需要传输文件,近200或300以上)
spawn scp -r /home/test root@example.com:/home/test
sleep 2
expect "password"
send "XXXXXX"
sleep 2
答案 0 :(得分:3)
在spawn
命令之前,添加行
set timeout -1
并用
替换第二个sleep
命令
expect eof
发送密码时不要忘记添加\r
:send "password\r"
我建议您设置SSH密钥 - 然后系统不会提示您输入密码,也不需要预期脚本。