2

最近、.bashrcファイルにssh-addコマンドを追加しました。見つけた

ssh-add $HOME/.ssh/id_rsa_github > /dev/null

シェルを開くたびに、「IDが追加されました」というメッセージが表示されます。

その間

ssh-add $HOME/.ssh/id_rsa_github > /dev/null 2>&1

トリックを行い、私のシェルは「クリーン」になりました。

インターネットで読んで、私は他のコマンドがそれをすることを発見しました(例えばtime)。なぜそれが行われたのか説明していただけますか?

4

1 に答える 1

1

あるプロセスから別のプロセスに出力をリダイレクトする場合(パイプなど)

$ procA | procB | procC

これは伝統的にstdoutを使用して行われます。timeこのストリームの破損を回避するために、同様のコマンドがstderrに出力されることを期待します。時間を使用している場合は、問題を診断しているので、不注意でダウンストリームプロセスに余分な入力を提供したくありません。

この記事には、これを取り巻くいくつかの詳細といくつかの歴史が含まれています。

于 2012-07-04T09:12:33.977 に答える