Der folgende Befehl fügt den Inhalt der lokalen Datei id_rsa.pub
in die authorized_keys
Datei auf dem Host ein.
Aber ich verstehe nicht ganz, wie cat
und |
wie dieses Ziel gemeinsam erreicht wird. Kann mir das jemand erklären?
cat .ssh/id_rsa.pub | ssh b@B 'cat >> .ssh/authorized_keys'
Antwort1
Der cat
Befehl gibt den Inhalt der Datei aus .ssh/id_rsa.pub
; die |
(Pipe) empfängt diese Textausgabe und sendet (d. h. leitet) den Text dann an ssh
.
Verwendet diesen Text dann ssh
als Eingabe für den cat >> .ssh/authorized_keys
Befehl.
Antwort2
Wenn für cat
den Befehl kein Dateiname angegeben ist, wird dieser von stdin übernommen. In diesem Fall ist es die Ausgabe von |
.