Вопрос по – Как указать местоположение с помощью wget?

566

Мне нужны файлы для загрузки в / tmp / cron_test /. Мой код wget

wget --random-wait -r -p -nd -e robots=off -A".pdf" -U mozilla http://math.stanford.edu/undergrad/

Так есть ли какой-нибудь параметр для указания каталога?

Ваш Ответ

5   ответов
798

Со страницы руководства:

-P prefix
--directory-prefix=prefix
           Set directory prefix to prefix.  The directory prefix is the
           directory where all other files and sub-directories will be
           saved to, i.e. the top of the retrieval tree.  The default
           is . (the current directory).

Так что тебе нужно добавить-P /tmp/cron_test/ (краткая форма) или--directory-prefix=/tmp/cron_test/ (полная форма) к вашей команде. Также обратите внимание, что если каталог не существует, он будет создан.

Описание руководства затрудняет поиск этой опции. Я не думаю о месте, где я хочу что-то сохранить как «префикс каталога». Спасибо, что поделился Iain Samuel McLean Elder
-P / tmp / cron_test / не работает, но удаляет / любит -P tmp / cron_test / работает и даже создает несуществующий каталог. Kangarooo
Kangaroo, вероятно, не работает, потому что у вас нет / tmp / cron_test / в вашей системе: P Sameer
Также вы можете удалить корневую папку через--no-host-directories или-nH согласно ServerFault.com / вопросы / 354792 / ... Alien Life Form
-P игнорируется, если используется входной файл с -i, есть идеи? Jan Viehweger
297

-O - это возможность указать путь к файлу, в который вы хотите загрузить.

.ext> -O /path/to/folder/file.ext

-P - это префикс, куда он будет загружать файл в каталог

.ext> -P /path/to/folder
Я бы добавил косую черту, чтобы сделать это/path/to/folder/ та Louis Maddox
Up проголосовал за то, чтобы указать-O который мне не нужен, но заставил меня чувствовать себя увереннее, что-P было то, что мне было нужно. WORMSS
@ louisMaddox для страниц man на моем компьютере, префикс по умолчанию - "." (т. е. текущий каталог) добавление завершающей косой черты в «префикс каталога» приведет к ошибке двойной косой черты (т. е. my / favourite / dir / prefix //), кроме того, учитывая семантику, «префикс каталога» не потребует завершающего слэш. Timothy L.J. Stewart
@ TimothyL.J.Stewart Ошибка двойной косой черты отсутствует. har-wradim
6

что у вас правильный URL-адрес для всего, что вы загружаете. Прежде всего, URL с символами, такими как? и такие не могут быть проанализированы и решены. Это запутает строку cmd и примет любые символы, которые не разрешены в исходном URL-имени, как имя файла, в который вы загружаете.

Например

wget "sourceforge.net/projects/ebosse/files/latest/download?source=typ_redirect"

загрузит в файл с именем,?source=typ_redirect.

Как видите, знание кое-чего об URL помогает понятьwget.

Я загружаюсь с диска hirens, и в качестве ресурса использовалась только Linux 2.6.1 (import os недоступен). Правильный синтаксис, который решил мою проблему с загрузкой ISO на физический жесткий диск, был:

wget "(source url)" -O (directory where HD was mounted)/isofile.iso" 

Один может определить правильный URL, найдя в какой моментwget загружает в файл с именемindex.html (файл по умолчанию) и имеет правильный размер / другие атрибуты файла, который вам нужен, показанный следующей командой:

wget "(source url)"

Как только URL и исходный файл верны и они загружаются вindex.html, вы можете остановить загрузку @ Ct + z) и измените выходной файл, используя:

-O "<specified download directory>/filename.extension"

после ссылки на источник.

В моем случае это приводит к загрузке ISO и сохранению его в виде двоичного файла подisofile.iso, который, надеюсь, крепится.

2

man wget: -O file --output-document = file

wget "url" -O /tmp/cron_test/<file>
Это не ответ, потому что опция -o помещает загруженный файл в указанный файл. Но вопрос «Как положить файл в папку». И это дубликат существует ответ Anton Gorbunov
-11

попробуй этот метод -

import os
path = raw_input("enter the url:")
fold = raw_input("enter the folder:")
os.system('wget -r -nd -l1 -P %s --no-parent -A mp3 %s'%(fold, path))
Это сложнее, чем нужно Adam
Wayyyyyy сложнее, чем нужно. Зачем вообще использовать python? Это не отвечает на вопрос, поскольку ОП, очевидно, использует BASH. MD XF

Похожие вопросы