Может кто-нибудь объяснить, что делает эта команда wget для установки пояса для инструментов Heroku?
Я знакомлюсь с командами терминала и наткнулся на эту команду для установки пояса Heroku:
wget -qO- https://toolbelt.heroku.com/install.sh | sh
Отсюда я понял, что wget используется для загрузки файлов из Интернета по различным поддерживаемым протоколам, и они будут загружаться, даже если я выйду из системы.
Это правильно?
И я хотел бы знать еще две вещи об этой команде:
я вижу
-q0-в коде. Что это значит? Из manpages я вижу, что-qиспользуется, чтобы включить выходWgetвыкл. Но что это значит тоже? И как это использовать-qотличный от-q0-Что
|shв конце команды для? Что это делает?
Большое спасибо за время!
3 ответа
Эта команда на самом деле wget -qO не wget -q0,
Он автоматически загрузит файл https://toolbelt.heroku.com/install.sh (опция -q), и все загруженное будет объединено и записано в один файл-буфер (опция -O), который загружает буфер. затем будет отправлен и выполнен с sh,
sh интерпретатор оболочки, который будет запускать информацию, которую только что скачал wget
Итак, простыми словами вы говорите с помощью этой команды: загрузите этот sh-файл и не создавайте вывод о прогрессе, и все, что вы загружаете, выполняет его sh,
Как и большинство изолированных программ, запускаемых из терминала, wget обычно НЕ будет продолжать работать после закрытия родительского (терминала) (через выход из системы и т. Д.)
-qO-является сокращением двух параметров командной строки-q -O-- q говорит wget не выводить информацию о статусе / прогрессе
- O- говорит ему выводить загруженные данные в стандартный вывод
| shпередает данные из стандартного вывода вshкоманда, выполняющая скрипт
Это не 0 (число), это O (буква), оно перенаправляет вывод в файл, в данном случае (-) стандартный вывод, поэтому содержимое загруженного файла будет перенаправлено (с помощью |) на sh стандартный ввод. sh является оболочкой, интерпретатором команд, который будет выполнять команды, которые он получает.
Вы можете узнать больше о поиске перенаправлений в sh manpage (man sh).