我正在使用sftp传输一些文件。我的源系统是一个ubuntu系统,而目标是windows。我已经在windows中为sftp和ssh安装了Cygwin软件。我的脚本如下......
# FILE: test1.exp
set sftp_HOST somehost
set sftp_user someuser
set sftp_password somepassword
spawn sftp $sftp_user@$ftp_HOST
expect "*Password:* "
send "$sftp_password\r"
expect "sftp>* "
send "cd files\r"
expect "sftp>* "
send "mput *.xlsm\r"
expect "sftp>* "
send "quit\n"
expect eof
这个脚本运行正常。但在中间一些文件没有正确传输。由于超时,其他命令将从我的shell脚本继续。
我从以下脚本中调用上述期望......
# FILE: testscript.sh
export TELNET_PATH="/home/ist/Desktop/shellfilesscript"
expect $TELNET_PATH/test1.exp
cp *.xlsm /testfolder
例如,运行test1.exp时,cp命令会自动启动并中断expect命令。我无法从以前的帖子中找到任何解决方案,我认为cygwin有一些不同的方法。感谢帮助。 谢谢
答案 0 :(得分:0)
拥有"无限"超时:set timeout -1