Как скачивать файлы в Debian с помощью curl и wget в командной строке

Работа в командной строке Linux дает вам больше гибкости и контроля по сравнению с графическим интерфейсом. Командная строка имеет множество применений и широко используется в администрировании серверов. Вы можете автоматизировать задачу с помощью командной строки, а также она использует меньше ресурсов, чем графический интерфейс. Загрузка файла с помощью командной строки также проще и быстрее, так как для этого требуется всего одна команда, по сравнению с графическим интерфейсом, который в основном требует длительной процедуры.

В этой статье мы расскажем, как загрузить файл из командной строки Linux с помощью двух различных утилит. Обе утилиты являются бесплатными и предназначены для неинтерактивной загрузки файлов из Интернета. Эти утилиты работают в фоновом режиме, даже когда вы не вошли в систему.

Метод №1 Загрузка файлов с помощью Curl

Curl - это утилита командной строки, которая используется для передачи файлов на сервер и с сервера. Мы можем использовать ее для загрузки файлов из Интернета. Она разработана таким образом, что вы можете запускать ее без участия пользователя. Она поддерживает различные протоколы, включая HTTP, HTTPS, TELNET, SCP, FTP и т.д. По умолчанию он не установлен в ОС Debian. Поэтому его необходимо сначала установить. Для этого выполните следующие шаги:

Установка Curl

Запустите приложение Терминал в Debian. Для этого перейдите на вкладку Деятельность в левом верхнем углу рабочего стола. Затем в строке поиска введите terminal. Когда появится значок Терминала, нажмите на него, чтобы запустить его.

В Терминале введите следующую команду для перехода в учётную запись суперпользователя.

Когда появится запрос на ввод пароля, введите пароль суперпользователя.

Затем выполните следующую команду в Терминале для установки утилиты Curl.

Установка curl в Debian

После завершения установки мы можем использовать Curl для загрузки файлов.

Общий синтаксис CURL

Чтобы загрузить файлы с помощью Curl, используйте следующий синтаксис в Терминале:

Используя параметр [options], вы можете указать различные функции, например, сохранить загрузку под определенным именем, возобновить загрузку, указать скорость передачи и многое другое.

Используя параметр [URL], вы можете указать URL удаленного сервера.

Загрузка и сохранение файла с использованием имени исходного файла

Чтобы загрузить и сохранить файл с тем же именем, что и имя исходного файла, используйте следующий синтаксис:

Примером может быть:

Это сохранит скачанный файл как metador.pdf.

Сохранение скачанного файла

Загрузка и сохранение файла с использованием имени исходного файла с помощью curl

Также можно указать "-remote-name" вместо -O, чтобы сохранить файл как имя удаленного файла.

Загрузка и сохранение файла с другим именем

Чтобы загрузить и сохранить файл с именем, отличным от имени исходного файла, используйте следующий синтаксис:

В параметре [имя файла] укажите новое имя для загруженного файла.

Примером может быть:

Это сохранит загруженный файл как metador_1275.pdf.

Загрузка и сохранение файла с другим именем

Скачивание нескольких файлов одновременно

Вместо того чтобы загружать несколько файлов по одному, вы можете загрузить их все одновременно, выполнив одну команду. Для одновременной загрузки нескольких файлов используйте команду -O, за которой следует URL-адрес файла, который вы хотите загрузить.

Для этого используйте следующий синтаксис:

Примером может быть:

Приведенная выше команда загрузит оба файла.

Загрузка нескольких файлов одновременно с помощью curl

Существует альтернативный способ сделать это. Укажите список URL-адресов в файле, затем используйте команду Curl вместе с xargs в следующем синтаксисе:

Примером этого может быть:

Наш файл files.txt содержит три URL:

Загрузить все URL из текстового файла

Приведенная выше команда Curl загрузит все URL, указанные в файле files.txt.

Результат загрузки файлов

Загрузка файлов с FTP-сервера

Мы также можем загрузить файлы с FTP-сервера с помощью утилиты Curl. Для этого выполните команду в Terminal, используя следующий синтаксис:

Параметры ftp_user и ftp_pass используются для указания учетных данных для входа на FTP. Однако их можно пропустить в случае анонимного FTP-соединения.

Загрузка файлов с помощью Wget

Подобно Curl, существует еще одна утилита командной строки Wget, которую можно использовать для загрузки файлов и контента из Интернета. Wget - это сочетание слов World Wide Web и get. Она поддерживает такие протоколы, как FTP, SFTP, HTTP и HTTPS. Кроме того, он поддерживает рекурсивную загрузку, что очень полезно, если вы хотите загрузить целый сайт для просмотра в автономном режиме или для создания резервной копии статического сайта.

Установка Wget

Если wget еще не установлен в вашей системе, вы можете установить его, выполнив следующие действия:

Запустите приложение Терминал тем же способом, который обсуждался ранее в этой статье. В терминале введите следующую команду для перехода под учетной записью суперпользователя.

Когда появится запрос на ввод пароля, введите пароль суперпользователя.

Затем выполните следующую команду в Терминале для установки утилиты Wget.

установка wget в Debian

 

Общий синтаксис Wget

Чтобы загрузить файл с помощью Wget, используйте следующий синтаксис:

Загрузка и сохранение файла с использованием имени исходного файла

Использование приведенного выше синтаксиса для загрузки файла без какого-либо аргумента сохранит файл с тем же именем, что и исходный файл. Примером может служить загрузка файла metador.pdf.

Это сохранит загрузку как metador.pdf.

Скачайте и сохраните файл, используя имя исходного файла, с помощью wget

Загрузка и сохранение файла с другим именем

Чтобы загрузить и сохранить файл с именем, отличным от имени исходного файла, используйте следующий синтаксис:

Это сохранит загрузку как 1275_metador.

Скачайте и сохраните файл с другим именем с помощью wget

Загрузка файлов через FTP

Чтобы загрузить файлы с FTP-серверов, аутентифицированных пользователем, используйте следующий синтаксис:

Параметры ftp_user и ftp_pass используются для указания учетной записи FTP. Однако в случае анонимного FTP-соединения их можно пропустить.

Загрузка нескольких файлов

Чтобы загрузить несколько файлов с помощью Wget, создайте текстовый файл со списком URL файлов, а затем используйте следующий синтаксис для загрузки всех файлов одновременно.

Например, мы создали текстовый файл files.txt, который содержит два URL, как показано на рисунке ниже.

Файл, содержащий несколько URL

Затем мы выполнили следующую команду:

Загрузить все файлы из файла url

Выполнение приведенной выше команды автоматически загрузит оба URL, содержащихся в файле files.txt.

Приостановка и возобновление загрузки

Чтобы возобновить приостановленную загрузку, перейдите в каталог, в который вы ранее загрузили файл, а затем используйте следующий синтаксис для возобновления загрузки.

Примером может служить возобновление ранее приостановленного файла metador.pdf путем выполнения следующей команды.

wget: Приостановка и возобновление загрузки

Рекурсивная загрузка файлов

Wget поддерживает рекурсивную загрузку файлов, что является его основным отличием от Curl. Функция рекурсивной загрузки позволяет скачивать все, что находится в указанном каталоге.

Чтобы рекурсивно загрузить веб-сайт или FTP-сайт, используйте следующий синтаксис:

В качестве примера можно привести загрузку следующего сайта целиком.

Рекурсивная загрузка файлов с помощью wget

Заключение

Итак, в этой статье мы познакомились с двумя различными неинтерактивными утилитами командной строки, которые позволяют загружать файлы непосредственно из командной строки. Обе утилиты очень полезны и служат для одинаковых целей. Я надеюсь, что они будут полезны, когда вам понадобится скачать файл из Интернета.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий