web-dev-qa-db-fra.com

Quelle est la signification des commandes combinées `curl` +` apt-key add`?

Lors de l'installation de Heroku CLI, une commande a été rencontrée. Voici la commande:

curl -L https://cli-assets.heroku.com/apt/release.key | Sudo apt-key add -

Qu'est-ce que cela signifie et comment ça marche?

17
sphoenix

curl est un utilitaire permettant de télécharger quelque chose à partir d'un lien. Par défaut, il écrit dans STDOUT (c.-à-d. Qu'il imprime des choses à partir du lien dans le terminal).

L'option -L to curl signifie:

-L, --location
         (HTTP/HTTPS)  If the server reports that the requested page has moved to a 
         different location (indicated with a Location: header and a 3XX response 
         code), this option will make curl redo the request on the new place...

L'opérateur | est un canal qui transmet le résultat de la commande avant celui-ci en tant que STDIN de la commande après celui-ci.

apt-key est un utilitaire permettant d’ajouter des clés de confiance à apt pour les référentiels. Vous pouvez voir ce que add fait avec man apt-key:

add <filename>
         Add a new key to the list of trusted keys. The key is read from the 
         filename given with the parameter filename or if the filename is -
         from standard input.

Comme il est mentionné, - indique à apt key add que le fichier de clé doit être lu à partir de STDIN, qui dans ce cas correspond à ce qui a été acheminé à partir de la commande curl, donc, en résumé:

Téléchargez tout ce qui se trouve sur ce lien, même s’il a été déplacé, et ajoutez-le en tant que clé de référentiel APT de confiance.

32
Zanna