Так через какое-то время поиска на Google и Суперпользователе (и сканирование страниц справочника) я не мог найти ответ на что-то, что (я думаю), должно быть простым:
Если Вы идете сюда:
http://www.vim.org/scripts/script.php?script_id=2340
И попытайтесь загрузить тему:
http://www.vim.org/scripts/download_script.php?src_id=9750
Как так:
wget http://www.vim.org/scripts/download_script.php?src_id=9750
Вы, вероятно, закончите с названным файлом download_script.php?src_id=9750
.
Но я хочу, чтобы это было названо molokai.vim
, который является тем, что произошло бы, если бы я использовал браузер для загрузки этого файла.
Какие опции я должен указать для wget для желаемого эффекта?
Я также согласился бы с Вихревой эквивалентной командой.
-O file
--output-document=file
Документы не будут записаны в соответствующие файлы, но все они будут собраны воедино и записаны в файл. Если в качестве файла используется
-
, документы будут распечатаны на стандартный вывод, что отключает преобразование ссылок. (Используйте./-
для печати в файл с буквальным именем-
)
Таким образом,
wget -O somefile.extension http://www.vim.org/scripts/download_script.php?src_id=9750
Или вы можете получить wget
для решения этой задачи с помощью опции - Content-disposition, если она поддерживается вашей версией.
wget --content-disposition http://www.vim.org/scripts/download_script.php?src_id=9750
Caveats согласно man-странице,
--content-disposition
Если эта опция включена, включается экспериментальная (не полностью функциональная) поддержка заголовков "Content-Disposition". В настоящее время это может привести к дополнительным раундтрипам на сервере для запроса "HEAD", и, как известно, страдает от нескольких ошибок, поэтому по умолчанию она не включена.
Эта опция полезна для некоторых CGI-программ, загружающих файлы, которые используют заголовки "Content-Disposition" для описания того, каким должно быть имя загружаемого файла.
С помощью curl
можно добиться такого же автоматического поведения, используя,
curl -JLO http://www.vim.org/scripts/download_script.php?src_id=9750
-O
использует удаленное имя, а -J
заставляет -O
получить это имя из заголовка "Контент-диссозиция", а не URL, и -L
при необходимости следует за заголовками перенаправлений.
Просто кудрявые перенаправления хорошо работают, поэтому используя следующее, , я думаю, для того, что вы ищете.
curl -o molokai.vim http://www.vim.org/scripts/download_script.php?src_id=9750