Главная
» LINUX
»
Linux: Как загрузить файл по URL-адресу в терминале
Linux: Как загрузить файл по URL-адресу в терминале
Для загрузки файла по URL-адресу в терминале Linux наиболее распространенными инструментами являются Wget и curl . Для простой загрузки с указанием имени файла на сервере используйте ` wget "URL".`. В случае с curl используйте `.`, curl -L -O "URL"чтобы curl следовал HTTP-перенаправлениям и сохранял удаленное имя файла вместо вывода файла в терминал.
Быстрые команды для загрузки URL-адреса
Задание
Команда
Скачать с помощью Wget
wget "https://example.com/archive.tar.gz"
Скачать с помощью curl
curl -L -O "https://example.com/archive.tar.gz"
Выберите имя файла с помощью Wget
wget -O archive.tar.gz "URL"
Выберите имя файла с помощью curl
curl -L -o archive.tar.gz "URL"
Возобновить работу с помощью Wget
wget -c "URL"
Возобновить с помощью curl
curl -L -C - -o archive.tar.gz "URL"
Проверьте, установлены ли Wget или curl.
Во многих дистрибутивах Linux уже есть один или оба необходимых инструмента. Проверьте это перед установкой чего-либо:
command -v wget
command -v curl
Если команда выводит путь, например /usr/bin/wget, , значит, инструмент доступен. В противном случае установите инструмент с помощью менеджера пакетов вашего дистрибутива:
Wget удобен, когда цель состоит просто в загрузке файлов. Его базовый синтаксис выглядит следующим образом wget [options] URL, как описано в официальном руководстве GNU Wget .
wget "https://example.com/archive.tar.gz"
По умолчанию Wget сохраняет загруженный файл в каталоге, где была выполнена команда, используя имя файла, полученное из URL-адреса.
Простая загрузка с помощью Wget сохраняет файл в текущем каталоге терминала.
Сохраните в другую папку или файл под другим именем.
Чтобы сохранить имя удаленного файла, но разместить файл в папке «Загрузки», используйте опцию `directory-prefix` в Wget:
Будьте осторожны при -Oуказании нескольких URL-адресов: Wget обрабатывает их как один выходной поток, поэтому несколько загрузок могут быть записаны в один и тот же выходной файл. Это поведение объясняется в справочнике GNU по параметрам загрузки .
Эта -Oопция позволяет загружать контент с явным указанием локального пути и имени файла.
Возобновить прерванную загрузку Wget
Если предыдущая загрузка прервалась на полпути, и сервер поддерживает возобновление, выполните следующую команду:
wget -c "https://example.com/large-file.iso"
Функция Wget -cпродолжает загрузку с уже существующего частично сохраненного файла, если это возможно. Она предназначена для загрузки, начатой предыдущим запуском Wget или другой программой, а не просто для повторной попытки подключения, которая не удалась во время текущего запуска.
Скачать несколько URL-адресов из текстового файла
Создайте текстовый файл, в котором на каждой строке будет указан один URL-адрес, например urls.txt, , а затем используйте:
curl записывает данные ответа в стандартный вывод, если вы не укажете сохранить их в файл. Практический формат для скачивания:
curl -L -O "https://example.com/archive.tar.gz"
-LИспользуется перенаправление HTTP, а параметр uppercase -Oсохраняет файл, используя имя из URL-адреса. Эти параметры описаны в официальной справочной странице curl .
С помощью curl -Lвыполняется отслеживание перенаправлений и -Oсохранение имени файла по URL-адресу.
Выберите путь вывода команды curl.
Используйте строчные буквы, -oесли хотите самостоятельно выбрать имя локального файла:
Поддержка возобновления работы по-прежнему зависит от протокола и сервера. Не следует комбинировать curl --remove-on-errorс -C; в текущей документации curl эти параметры помечены как несовместимые.
Эта -C -опция заставляет curl возобновить работу с существующего частично сохраненного файла.
Несколько советов по безопасности при загрузке с терминала.
Заключайте URL-адреса в кавычки, если они содержат такие символы, как &, ?, *, квадратные скобки или фигурные скобки, чтобы оболочка не интерпретировала их.
Отдавайте предпочтение HTTPS и не обходите проверку сертификатов с помощью curl -kили Wget --no-check-certificate.
Проверяйте контрольные суммы, если издатель предоставляет дайджест SHA-256 или аналогичный для больших установочных файлов, ISO-образов или архивов.
Избегайте размещения паролей или долговременных секретных данных непосредственно в URL-адресах ; командная строка может храниться в истории командной оболочки и быть видна другим процессам или пользователям.
Для разовых загрузок Wget часто является самой короткой командой. curl особенно полезен, когда вам также требуется обработка перенаправлений, пользовательские заголовки, аутентификация, API или другие элементы управления HTTP. Для обычных загрузок в терминале Linux любой из этих инструментов надежен при использовании правильных параметров вывода и возобновления загрузки.