У сфері Linux опанування командного рядка має важливе значення для ефективного та потужного використання операційної системи. Серед доступних інструментів командного рядка ` curl`> виділяється як одна з найбільш універсальних і потужних утиліт. Спочатку розроблений Даніелем Стенбергом, ` curl`> це інструмент командного рядка та бібліотека для передачі даних за допомогою URL-адрес. Він підтримує широкий спектр протоколів, що робить його безцінним інструментом для отримання, завантаження та керування даними через Інтернет. У цьому вичерпному посібнику ми заглибимося в тонкощі ` curl`> команду в Linux, досліджуючи її функції, параметри та різні випадки використання.
Розуміння основ
По суті, ` curl`> призначений для передачі даних за допомогою різних протоколів, таких як HTTP, HTTPS, FTP, SCP, SFTP тощо. Його синтаксис простий:
curl [options] [URL]>
тут,
[> options> ]>можуть бути різними прапорцями командного рядка, які змінюють поведінкуcurl>
для кожного машинопису
[> URL> ]>визначає розташування, з якого потрібно отримати або надіслати дані.
Отримання даних за допомогою команди curl
Один із найпоширеніших випадків використання ` curl`> отримує дані з URL-адреси. Це може бути проста HTML-сторінка, файл або будь-який ресурс, доступний через URL-адресу. Щоб отримати веб-сторінку за допомогою ` curl`> , ви просто вказуєте URL як аргумент:
curl https://example.com>
Ця команда отримає HTML-вміст зазначеної URL-адреси та відобразить його в терміналі.
curl https://www.techcodeview.com>
Це має відобразити вміст URL-адреси на терміналі. Синтаксис URL-адреси залежить від протоколу, і кілька URL-адрес можна записати як набори, наприклад:
curl http://site.{one, two, three}.com> URL-адреси з числовими рядами можна записати так:
curl ftp://ftp.example.com/file[1-20].webp'ltr'>Індикатор прогресу: curl відображає індикатор прогресу під час використання, щоб вказати швидкість передачі, кількість переданих даних, час, що залишився, тощо. curl -# -O ftp://ftp.example.com/file.zip curl --silent ftp: //ftp.example.com/file.zip Якщо вам подобається індикатор виконання замість лічильника, ви можете використати параметр -#, як у прикладі вище, або –silent, якщо ви хочете повністю вимкнути його. Приклад: обробка HTTP-запитів за допомогою команди curl. Curl дозволяє надсилати спеціальні HTTP-запити різними методами, такими як GET, POST, PUT, DELETE тощо. Наприклад, щоб надіслати запит GET: curl -X GET https:/ /api.example.com/resource Так само, щоб надіслати запит POST із даними: curl -X POST -d 'key1=value1&key2=value2' https://api.example.com/resource У цьому прикладі ` Прапор -d` використовується для визначення даних, які надсилаються разом із запитом. Завантаження файлів за допомогою curl Команда curl також широко використовується для завантаження файлів з Інтернету. Щоб завантажити файл, ви просто вказуєте URL-адресу файлу як аргумент: -o: зберігає завантажений файл на локальній машині з назвою, указаною в параметрах. Синтаксис: curl -o [назва_файлу] [URL...] Приклад: curl -o hello.zip ftp://speedtest.tele2.net/1MB.zip Вихідні дані: у наведеному вище прикладі файл завантажується з FTP-сервера та зберігається з назвою hello.zip . -O: цей параметр завантажує файл і зберігає його під тим же ім’ям, що й у URL-адресі. Синтаксис: curl -O [URL...] Приклад: curl -O ftp://speedtest.tele2.net/1MB.zip Вихід: Завантаження файлів Окрім завантаження, ` curl` також може завантажувати файли на сервер за допомогою різних протоколи. Наприклад, щоб завантажити файл через FTP: curl -T uploadfile.txt ftp://example.com/upload/ У цьому прикладі ` -T uploadfile.txt` визначає файл для завантаження (` uploadfile.txt` ) . Прапор `-T` використовується для завантаження файлу через FTP. Потім ` curl` надсилає вказаний файл на сервер FTP, розташований за адресою ` ftp://example.com/upload/` . Це корисно для автоматизації завантаження файлів або передачі файлів через FTP із командного рядка. Обробка автентифікації Curl підтримує різні методи автентифікації, включаючи базову, дайджестну та OAuth. Ви можете вказати облікові дані автентифікації за допомогою прапорця `-u`: curl -u ім’я користувача:пароль https://example.com/api Прапор `-u` використовується для вказування облікових даних автентифікації (`ім’я користувача:пароль`). У цьому прикладі «curl» включатиме ці облікові дані в заголовок запиту під час доступу до «https://example.com/api». Це зазвичай використовується під час доступу до захищених ресурсів або API, які потребують автентифікації. Приклади команди Curl -C – параметр: цей параметр відновлює завантаження, яке було зупинено з певної причини. Це корисно, коли завантаження великих файлів було перервано. Синтаксис: curl -C - [URL...] Приклад: curl -C - -O ftp://speedtest.tele2.net/1MB.zip Вихід: –limit-rate Параметр: цей параметр обмежує верхню межу швидкості передачі даних і зберігає його навколо заданого значення в байтах. Синтаксис: curl --limit-rate [значення] [URL] Приклад: curl --limit-rate 1000K -O ftp://speedtest.tele2.net/1MB.zip Результат: команда обмежує завантаження 1000K байтами. Параметр -u: curl також надає параметри для завантаження файлів із FTP-серверів, авторизованих користувачами. Синтаксис: curl -u {ім’я користувача}:{пароль} [FTP_URL] Приклад: curl -u demo:пароль -O ftp://test.rebex.net/readme.txt Вихід: -T Параметр: цей параметр допомагає завантажити файл на сервер FTP. Синтаксис: curl -u {ім'я користувача}:{пароль} -T {ім'я файлу} {FTP_Location} Якщо ви хочете додати вже існуючий файл FTP, ви можете скористатися параметром -a або -append. Параметр –libcurl: цей параметр дуже корисний з точки зору розробника. Якщо цей параметр додається до будь-якої команди cURL, він виводить вихідний код C, який використовує libcurl для вказаного параметра. Це код, подібний до реалізації командного рядка. Синтаксис: curl [URL-адреса...] --libcurl [назва файлу] Приклад: curl https://www.techcodeview.com> log.html --libcurl code.c Результат: у наведеному вище прикладі завантажується HTML-код і зберігається в журналі .html і код у файлі code.c. Наступна команда показує перші 30 рядків коду. Надсилання пошти: оскільки curl може передавати дані через різні протоколи, включаючи SMTP, ми можемо використовувати curl для надсилання пошти. Синтаксис: curl –url [URL-адреса SMTP] –mail-from [пошта_відправника] –mail-rcpt [пошта_одержувача] -n –ssl-reqd -u {email}:{пароль} -T [текстовий файл пошти] Протокол DICT: Libcurl визначає протокол DICT, який можна використовувати для легкого отримання визначення або значення будь-якого слова безпосередньо з командного рядка. Синтаксис: curl [протокол:[URL_словника]:[слово] Приклад: curl dict://dict.org/d:overclock Вихід: Примітка: cURL пропонує ряд інших параметрів, які можна перевірити на головній сторінці. Бібліотека libcurl була перенесена на різні мови програмування. Бажано відвідати сайт окремого проекту для документації. Висновок Підсумовуючи, опанування командного рядка в Linux має ключове значення для досягнення максимальної ефективності та результативності навігації операційною системою, причому ` curl ` стає видатним інструментом завдяки своїй універсальності та потужним можливостям для передачі даних через різні протоколи. Розроблений Даніелем Стенбергом, ` curl` полегшує отримання, завантаження та керування даними через Інтернет. У цьому посібнику детально описано функції, параметри та різноманітні програми curl, підкреслюючи його незамінність для користувачів Linux, яким потрібна оптимальна функціональність командного рядка.>