curl: сайт из терминала
В терминале: zvezda learn curl. Урок покажет карточку и завершится; сделайте шаг и снова запустите урок - он проверит и покажет следующую.
Шаг 1 из 4
Дарья: Кэндзи записал: «curl - это браузер без экрана: даёшь адрес - печатает ответ». Все команды урока - на сервере (там лежит ваш токен). Адрес - целиком в двойных кавычках:
curl -sS "https://moad.galoev.com/lab/hello?token=$(cat ~/.zvezda/token)"
Кавычки нужны из-за ? и $(...); двойные - чтобы $(...) подставился (одинарные бы его выключили). -sS - «тихо, но ошибки показывать».
Шаг 2 из 4
Дарья: Чтобы ответ лёг в файл, а не на экран, - -o ИМЯ. А -f превращает ошибку сайта в ошибку команды: без него curl молча сохранит страницу ошибки вместо файла.
curl -sS -f -o ~/zvezda/learn/hello.txt "https://moad.galoev.com/lab/hello?token=$(cat ~/.zvezda/token)"
cat ~/zvezda/learn/hello.txtШаг 3 из 4
Дарья: Так же скачивают архивы. Зайдите в папку урока, скачайте учебный архив и распакуйте:
cd ~/zvezda/learn
curl -sS -f -o sample.tar.gz https://moad.galoev.com/lab/sample.tar.gz
tar -xzvf sample.tar.gzШаг 4 из 4
Дарья: А если файла на сайте нет? Этого архива там нет специально - попробуйте:
cd ~/zvezda/learn
curl -sS -f -o missing.tar.gz https://moad.galoev.com/lab/missing.tar.gz
Что сделал curl? 1 - скачал архив; 2 - сообщил об ошибке и ничего не сохранил.
Шпаргалка
curl -sS "адрес" - ответ сайта на экран (-sS: тихо, ошибки видно) curl -sS -f -o файл "адрес" - сохранить в файл; ошибка сайта = ошибка команды адрес с ? или $(...) - в двойных кавычках все команды с токеном - на сервере ДЗ скачали архив - tar -xzvf архив.tar.gz