Linux Shell

/dev/null とは?有効な使い方について

みなさんは/dev/nullというファイルをご存知でしょうか?

このファイルに入っていくものや出ていくものは全てnull言わば、サーバ内のブラックホールのような存在です。

例えば

と"hoge"と出力されていますが、リダイレクト先を/dev/nullにすると

何も出力されなくなります。

どんなタイミングで使うか

コマンドの結果を標準出力に出したくない場合に利用できます。

具体例をあげるとこのブログのサーバに対してscpコマンドでファイルのダウンロードを試みましたが、いざやってみると

ssh-agentの結果が出力されてダウンロードができませんでした。

調査をしてみると、ssh先の.bashrcファイルに

どうやらscpでsshしたときに.bashrcが読み込まれssh-agentの結果が標準出力されてしまうのが原因だったみたいです。

なので、ここを

にすればssh-agentの結果は標準出力されなくなるので

で無事ダウンロードができるようになりました。

このように、標準出力に出したくないという場合に活用してみるのはありだと思います。

まとめ

  • /dev/nullは入出力を全てnullにするブラックホールのような存在
  • 標準出力を出したくない場合にはリダイレクトで指定するような使い方ができる

-Linux, Shell

© 2024 Shiro's secret base