В вашем коде первая строка загружает скрипт с серверов Node. Это скрипт Bash, и Curl напечатает его на стандартный вывод, поэтому мы используем оператор pipe, чтобы отправить его в Bash. Тире (-) - это стандартный метод сообщения программе о том, что она должна читать со стандартного ввода, а не из файла. Оператор канала работает, отправляя стандартный вывод команды в качестве стандартного ввода следующему, поэтому Bash получит сценарий, загруженный с серверов Node, и обработает его, как если бы это был файл, поэтому он выполнит его.
Если бы вы запустили команду без | bash -
в конце, вы бы увидели длинный скрипт Bash, написанный на вашем терминале. Если вы попытаетесь запустить echo "echo Hi" | bash -
, вы увидите «Hi» в своем терминале, так как вы сначала печатаете echo Hi
на экране, а затем отправляете его в Bash для его выполнения, который выводит «Hi».
Вторая команда выполняет обычную установку Node.js с помощью вашего менеджера пакетов.
Таким образом, в основном вы запускаете скрипт с серверов Node, выполняя некоторые задачи предварительной установки (возможно, добавляя ключи apt из Node и устанавливая зависимости), а затем вы фактически устанавливаете Node.js.