TG Telegram Group & Channel
ServerAdmin.ru | United States America (US)
Create: Update:

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

Скачать файл под своим именем:
curl -O https://site.com/file.tar.gz
wget https://site.com/file.tar.gz

Скачать и сохранить с заданным именем:
curl -o file_new.tar.gz https://site.com/file.tar.gz
wget -O file_new.tar.gz https://site.com/file.tar.gz

Для curl я обычно применяю пару дополнительных ключей:
-s — режим silent, отключает вывод служебной информации, актуально для скриптов;
-k — игнорирует ошибки TLS, например, с недоверенным сертификатом.

И у wget, и у curl есть одинаковая опция по ограничению скорости загрузки через ключ --limit-rate 10M. Суффиксы k, M, G обозначают килобайты, мегабайты, гигабайты.

Скачать скрипт и сразу запустить его 😱:
curl -sSL https://get.docker.com/ | sh
Автоматическая установка докера. Я постоянно пользуюсь.

Для аутентификации в curl достаточно через ключ -u добавить имя пользователя и пароль. Работает как с basic auth, так и с kerberos, ntlm. Для кербероса надо только не забыть домен добавить к имени пользователя.
curl -O -u user:password https://site.com/file.tar.gz

Скачать набор файлов из текстового списка, где каждая строка это отдельная ссылка:
wget –I urls.txt
Если добавить ключ -b, то скачивание будет идти в фоновом режиме. Актуально, когда качаешь по списку набор iso. Это может долго длиться.

Скачать целиком сайт. Работает нормально, сам проверял несколько раз, скачивая некоторые сайты:
wget -r -k -l 7 -p -E -nc http://site.ru/
7 — глубина вложенности страниц от указанной, можно сделать меньше или больше в зависимости от сайта, чтобы не качать уже мусорные ссылки.

Скачать файл с ssh сервера через scp:
curl -O -k -u user scp://192.168.1.1:22/data/file.tar.gz
Запрос пароля появится в консоли. Можно его сразу указать, только имейте ввиду, что пароль останется в history:
curl -O -k -u user:password scp://192.168.1.1:22/data/file.tar.gz
И то же самое, только с ключом:
curl -O -k -u user --key ~/.ssh/id_rsa scp://192.168.1.1:22/data/file.tar.gz

Скачать файл по ftp:
curl -O ftp://user:[email protected]/data/file.tar.gz

Скачать файл по smb:
curl -O -u "domain\user:password" smb://server.local/share/file.tar.gz

Выгрузка (загрузка на сервер) файлов по ftp, ssh, smb:
curl -T file.tar.gz -u user:password ftp://ftpserver.ru/data/
curl -k -T file.tar.gz -u user scp://ftpserver.ru/data/
curl -k -T file.tar.gz -u user --key ~/.ssh/id_rsa scp://ftpserver.ru/data/
curl -T file.tar.gz -u "domain\user:password" smb://server.local/share/
Причём можно сразу загрузить группу файлов с именами, которые можно задать по стандартной маске в bash:
curl -T "file[1-100].tar.gz" ftp://ftpserver.ru/data/

#bash #terminal #curl

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

Скачать файл под своим именем:
curl -O https://site.com/file.tar.gz
wget https://site.com/file.tar.gz

Скачать и сохранить с заданным именем:
curl -o file_new.tar.gz https://site.com/file.tar.gz
wget -O file_new.tar.gz https://site.com/file.tar.gz

Для curl я обычно применяю пару дополнительных ключей:
-s — режим silent, отключает вывод служебной информации, актуально для скриптов;
-k — игнорирует ошибки TLS, например, с недоверенным сертификатом.

И у wget, и у curl есть одинаковая опция по ограничению скорости загрузки через ключ --limit-rate 10M. Суффиксы k, M, G обозначают килобайты, мегабайты, гигабайты.

Скачать скрипт и сразу запустить его 😱:
curl -sSL https://get.docker.com/ | sh
Автоматическая установка докера. Я постоянно пользуюсь.

Для аутентификации в curl достаточно через ключ -u добавить имя пользователя и пароль. Работает как с basic auth, так и с kerberos, ntlm. Для кербероса надо только не забыть домен добавить к имени пользователя.
curl -O -u user:password https://site.com/file.tar.gz

Скачать набор файлов из текстового списка, где каждая строка это отдельная ссылка:
wget –I urls.txt
Если добавить ключ -b, то скачивание будет идти в фоновом режиме. Актуально, когда качаешь по списку набор iso. Это может долго длиться.

Скачать целиком сайт. Работает нормально, сам проверял несколько раз, скачивая некоторые сайты:
wget -r -k -l 7 -p -E -nc http://site.ru/
7 — глубина вложенности страниц от указанной, можно сделать меньше или больше в зависимости от сайта, чтобы не качать уже мусорные ссылки.

Скачать файл с ssh сервера через scp:
curl -O -k -u user scp://192.168.1.1:22/data/file.tar.gz
Запрос пароля появится в консоли. Можно его сразу указать, только имейте ввиду, что пароль останется в history:
curl -O -k -u user:password scp://192.168.1.1:22/data/file.tar.gz
И то же самое, только с ключом:
curl -O -k -u user --key ~/.ssh/id_rsa scp://192.168.1.1:22/data/file.tar.gz

Скачать файл по ftp:
curl -O ftp://user:[email protected]/data/file.tar.gz

Скачать файл по smb:
curl -O -u "domain\user:password" smb://server.local/share/file.tar.gz

Выгрузка (загрузка на сервер) файлов по ftp, ssh, smb:
curl -T file.tar.gz -u user:password ftp://ftpserver.ru/data/
curl -k -T file.tar.gz -u user scp://ftpserver.ru/data/
curl -k -T file.tar.gz -u user --key ~/.ssh/id_rsa scp://ftpserver.ru/data/
curl -T file.tar.gz -u "domain\user:password" smb://server.local/share/
Причём можно сразу загрузить группу файлов с именами, которые можно задать по стандартной маске в bash:
curl -T "file[1-100].tar.gz" ftp://ftpserver.ru/data/

#bash #terminal #curl
👍156👎3


>>Click here to continue<<

ServerAdmin.ru




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)