Bash 强制lftp打开二进制连接?

Bash 强制lftp打开二进制连接?,bash,ftp,ftp-client,lftp,Bash,Ftp,Ftp Client,Lftp,问题:我正在尝试创建公共FTP站点的本地镜像。当我使用lftp执行此项工作时,它会创建一个镜像,没有问题,但当我几天后尝试更新镜像时,由于被几个文件卡住,它会变得非常缓慢 运行lftp-d我可以看到lftp向RETR文件发出多个请求,但这些请求会导致多个****超时-重新连接消息,大约2-3分钟后我看到 二进制模式的ftp命令是bin,因此在获取文件之前使用该命令 cd /direc/tory; bin; get file.xml 问题是我明白了 ---> TYPE I <---

问题:我正在尝试创建公共FTP站点的本地镜像。当我使用
lftp
执行此项工作时,它会创建一个镜像,没有问题,但当我几天后尝试更新镜像时,由于被几个文件卡住,它会变得非常缓慢

运行
lftp-d
我可以看到
lftp
RETR
文件发出多个请求,但这些请求会导致多个
****超时-重新连接
消息,大约2-3分钟后我看到


二进制模式的ftp命令是
bin
,因此在
获取文件之前使用该命令

cd /direc/tory; bin; get file.xml
问题是我明白了

---> TYPE I
<--- 200 Switching to Binary mode.                         
-->I型

默认情况下,lftp对所有文件传输使用二进制模式,对目录列表使用ascii模式。所以二进制模式在这里应该不是问题


可能您有一个微妙的连接问题,有时将net:socket maxseg设置为较低的值(例如500)会有所帮助。

我开始怀疑我被服务器限制了。。。原因是打开ftp服务器上的任何文件(例如通过lynx)会变得非常慢。但是,奇怪的是,如果我取消并重新启动lftp,它会从第一个文件夹开始,并重新下载已从取消的会话中更新的文件(没有任何错误或延迟)。。。所以我不太确定该怎么做。我没有尝试您建议的设置,因为使用
--忽略时间
解决了我的问题。我接受了你的回答,因为你已经明确表示,二进制模式总是被使用。
cd /direc/tory; bin; get file.xml
---> TYPE I
<--- 200 Switching to Binary mode.