Was bedeuten kombinierte Befehle `curl` +` apt-key add`?

18

Während der Installation von Heroku CLI ist ein Befehl aufgetreten. Hier ist der Befehl:

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

Was bedeutet es und wie funktioniert es?

sphoenix
quelle

Antworten:

33

curlist ein Dienstprogramm, um etwas von einem Link herunterzuladen. Standardmäßig schreibt es in STDOUT (dh druckt Sachen vom Link im Terminal)

Die -LOption zu curlbedeutet:

-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...

Der Operator |ist eine Pipe, die die Ausgabe des Befehls als STDIN des darauf folgenden Befehls übergibt.

apt-keyist ein Dienstprogramm zum Hinzufügen vertrauenswürdiger Schlüssel für Repositorys. Sie können sehen, was addmit 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.

Wie es erwähnt, -erzählt , apt key adddass sollte die Schlüsseldatei von STDIN gelesen werden, die in diesem Fall ist das, was aus dem verrohrt wurde curlBefehl, so in der Summe:

Laden Sie alles, was sich unter diesem Link befindet, herunter, auch wenn es verschoben wurde, und fügen Sie es als vertrauenswürdigen APT-Repository-Schlüssel hinzu.

Zanna
quelle