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

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

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

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

Ответы на вопрос(5)

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

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

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

.ext> -P /path/to/folder
 WORMSS29 мар. 2016 г., 21:19
Up проголосовал за то, чтобы указать-O который мне не нужен, но заставил меня чувствовать себя увереннее, что-P было то, что мне было нужно.
 Timothy L.J. Stewart07 апр. 2017 г., 23:14
@ louisMaddox для страниц man на моем компьютере, префикс по умолчанию - "." (т. е. текущий каталог) добавление завершающей косой черты в «префикс каталога» приведет к ошибке двойной косой черты (т. е. my / favourite / dir / prefix //), кроме того, учитывая семантику, «префикс каталога» не потребует завершающего слэш.
 Louis Maddox01 мар. 2016 г., 17:49
Я бы добавил косую черту, чтобы сделать это/path/to/folder/ та
 har-wradim16 авг. 2017 г., 16:18
@ TimothyL.J.Stewart Ошибка двойной косой черты отсутствует.
Решение Вопроса

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

-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 Elder07 мар. 2014 г., 00:03
Описание руководства затрудняет поиск этой опции. Я не думаю о месте, где я хочу что-то сохранить как «префикс каталога». Спасибо, что поделился
 Sameer29 сент. 2013 г., 16:22
Kangaroo, вероятно, не работает, потому что у вас нет / tmp / cron_test / в вашей системе: P
 Kangarooo25 окт. 2012 г., 02:11
-P / tmp / cron_test / не работает, но удаляет / любит -P tmp / cron_test / работает и даже создает несуществующий каталог.
 Alien Life Form01 июл. 2015 г., 05:43
Также вы можете удалить корневую папку через--no-host-directories или-nH согласно ServerFault.com / вопросы / 354792 / ...
 Jan Viehweger23 февр. 2017 г., 11:16
-P игнорируется, если используется входной файл с -i, есть идеи?

что у вас правильный 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, который, надеюсь, крепится.

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

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))
 Adam03 мар. 2017 г., 07:19
Это сложнее, чем нужно
 MD XF03 мая 2017 г., 22:32
Wayyyyyy сложнее, чем нужно. Зачем вообще использовать python? Это не отвечает на вопрос, поскольку ОП, очевидно, использует BASH.

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

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

Ваш ответ на вопрос