このシェルコマンドはどのように機能しますか?

このシェルコマンドはどのように機能しますか?

次のコマンドは、ローカルコンテンツをホスト上のファイルid_rsa.pubに配置します。authorized_keys

しかし、これを達成するためにcat一緒に協力する必要があるかどうかはわかりません。説明できる人はいますか?|

cat .ssh/id_rsa.pub | ssh b@B 'cat >> .ssh/authorized_keys'

答え1

このcatコマンドはファイルの内容を出力します.ssh/id_rsa.pub。このテキスト出力は受信(パイプ|)され、テキストはに送信(つまりパイプ)されますssh

次に、sshこのテキストをcat >> .ssh/authorized_keysコマンドへの入力として使用します。

答え2

コマンドの場合、catファイル名が指定されていない場合は、標準入力からファイル名を取得します。この場合はの出力です|

関連情報