gpt4 book ai didi

linux - 期望脚本自动 FTP 上传正在将损坏的文件发送到服务器

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:15:15 24 4
gpt4 key购买 nike

#!/usr/local/bin/expect -f

spawn ftp $HOSTNAME
expect "Name (sj105ut01:laureen):"
send "laureen\r"
expect "Password:"
send "password\r"
expect "ftp>"
send "cd path\r"
expect "ftp>"
send "put local_file.t.Z remote_file.t.Z"
expect "ftp>"
send "bye\n"
#interact

当我尝试使用 (tar xzf) 在服务器上解压缩文件时,出现以下错误:

tar: Unexpected EOF in archive tar: Unexpected EOF in archive tar: Error is not recoverable: exiting

这可能是什么原因造成的?有什么办法可以解决吗?

当它开始执行 put 命令时,我在屏幕上看到了这个:

150 Opening BINARY mode data connection for remote_file.t.Z

然后我拿回外壳。我想我应该看到一些表明传输已完成的东西,但我没有。像:

226 Transfer complete 147742720 bytes sent in 27.3 secs (5420.58 Kbytes/sec)

文件大小:本地:142M,远程:56M!

谢谢

最佳答案

如果您的文件上传时间超过 10 秒,您将达到 expect 的默认超时:虽然在发送“put”命令后期望看到“ftp>”提示,但在(默认)10 秒后,期望 放弃 超时 并继续执行下一个命令(发送再见)。

试试这个:

set timeout -1
send "put local_file.t.Z remote_file.t.Z"

此外,在您“发送再见”之后,您应该等待连接结束:

send "bye\r"
expect eof

关于linux - 期望脚本自动 FTP 上传正在将损坏的文件发送到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53152814/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com