使用 WGET 从 FTP 服务器传输文件时出现问题

使用 WGET 从 FTP 服务器传输文件时出现问题

我使用 wget 从 FTP 服务器获取文件。我这样做:

wget ftp://username:[email protected]/public_html/images/audiothumbs/* .

下载大约 1600 个文件后,出现此错误:

--2010-09-07 01:36:51--  http://./
Resolving .... failed: Name or service not known.
wget: unable to resolve host address `.'
FINISHED --2010-09-07 01:36:52--
Downloaded: 1998 files, 20M in 3m 31s (95.7 KB/s)

我与其他服务器的连接是否断开了?

其次,如果使用 no-clobber 选项,如下所示:

wget -r -nc ftp://username:[email protected]/public_html/images/audiothumbs/* .

为什么文件仍然会被覆盖?

感谢大家的帮助

答案1

.您的命令行末尾有一个多余的内容。wget不像cp并且不接受目标目录。 因此,在从 FTP 服务器下载所有文件后,它会尝试从服务器下载文件(使用 HTTP).

对于-nc,有记录显示它做了一些与你预期不同的事情:

      运行不带 -N、-nc 或 -r 的 Wget 时,下载同一个文件
      在同一目录中将导致文件的原始副本
      被保存,第二个副本被命名为 file.1。如果
      文件再次下载,第三个副本将被命名为 file.2,
      等等。当指定 -nc 时,此行为被抑制,并且
      Wget 将拒绝下载文件的较新副本。因此,
      在这种模式下,“no-clobber”实际上是一个错误的说法——它不是
      阻止了破坏(因为数字后缀已经
      防止破坏),而是保存多个版本
      这被阻止了。

答案2

请注意,下载目录中的最大递归次数为 5!

当使用 wget 从 ftp 下载时,您必须设置递归深度:

-l depth --level=depth

指定递归最大深度级别深度。默认最大深度为 5。

相关内容