我最近在我的 .bashrc 文件中添加了一个 ssh-add 命令。我找到
ssh-add $HOME/.ssh/id_rsa_github > /dev/null
每次打开 shell 时都会显示一条消息“添加了身份和其他内容”。
尽管
ssh-add $HOME/.ssh/id_rsa_github > /dev/null 2>&1
成功了,我的外壳现在“干净”了。
在互联网上阅读,我发现其他命令可以做到这一点,(例如time
)。你能解释一下为什么这样做吗?
当您将输出从一个进程重定向到另一个进程时,例如通过管道
$ procA | procB | procC
这通常使用标准输出来完成。我希望time
和类似的命令输出到 stderr 以避免损坏此流。如果您正在使用时间,那么您就是在诊断问题,并且您不想无意中为下游流程提供额外的输入。
本文包括一些进一步的细节和一些关于此的历史。