Решил собрать часто используемые команды по загрузке файлов, которыми часто приходится пользоваться.
Скачивание файлов под своим именем
curl -O https://site.com/file.tar.gz
wget https://site.com/file.tar.gz
Скачать и сохранить с заданным именем
curl -o file1.tar.gz https://site.com/file.tar.gz
wget -O file2.tar.gz https://site.com/file.tar.gz
Если добавить ключ -s - это silent режим, для сокрытия служебной информации
А вот -k - игнорирует ошибки проверки TLS, если сертификат был самоподписанный или просроченный
И у wget, и у curl есть одинаковая опция по ограничению скорости загрузки через ключ --limit-rate 10M
. Суффиксы k, M, G обозначают килобайты, мегабайты, гигабайты.
Скачать скрипт и сразу запустить его:
curl -sSL https://get.docker.com/ | sh
Base аутентификация, если файлы спрятан под паролем
curl -O -u user:password https://site.com/file.tar.gz
Скачать набор файлов из текстового списка, где каждая строка это отдельная ссылка:
wget –I urls.txt
Если, добавить ключ -b, скачивание запуститься в фоновом режиме
Скачать целиком сайт. Работает не всегда хорошо, но скачать некоторые сайты получалось, давно уже не использовал.
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.com/files/
curl -k -T file.tar.gz -u user scp://ftpserver.com/files/
curl -k -T file.tar.gz -u user --key ~/.ssh/id_rsa scp://ftpserver.com/files/
curl -T file.tar.gz -u "domain\user:password" smb://ftpserver.com/files/
Причём можно сразу загрузить группу файлов с именами, которые можно задать по стандартной маске в bash
curl -T "file[1-100].tar.gz" ftp://ftpserver.com/files/
Анонсы и еще больше информации в Telegram-канале