
Я использую 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
, документировано, что он делает нечто иное, чем вы ожидаете:
При запуске Wget без -N, -nc или -r загрузка того же файла в том же каталоге приведет к созданию оригинальной копии файла сохраняется, а вторая копия называется file.1. Если это файл загружается еще раз, третья копия будет иметь имя file.2, и т. д. Если указано -nc, это поведение подавляется, и Wget откажется загружать новые копии файла. Поэтому, ''"no-clobber"'' на самом деле неправильное название в этом режиме — это не затирание, которое предотвращается (поскольку числовые суффиксы уже были предотвращение затирания), а скорее сохранение нескольких версий это предотвращено.
решение2
Обратите внимание, что максимальная рекурсия в каталоге загрузки — 5!
При загрузке с ftp с помощью wget необходимо задать глубину рекурсии:
-l depth
--level=depth
Укажите максимальную глубину уровня рекурсии. Максимальная глубина по умолчанию — 5.