「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

「標準入力」と「標準出力」と「標準エラー出力」の違い

スポンサーリンク

それぞれの用語の意味


用語意味
標準入力プログラムとかにおける、何も指定されなかったときに使われる入力( ≒ キーボードからの入力)
標準出力プログラムとかにおける、何も指定されなかったときに使われる出力( ≒ 画面への出力)
標準エラー出力プログラムとかにおける、何も指定されなかったときに使われる、エラーの出力先( ≒ (エラーの)画面への出力)

似ているところ


どれも、プログラムとかにおける「何も指定されなかったら、これを使うからね!」な入力元・出力先です。


違うところ


役割が違います。
それぞれ、特に指定がなかったときに使われる

標準入力:入力元
標準出力:出力先
標準エラー出力:エラーの出力先


です。

実は、ですね。
プログラムさんは、かなりの重病人なのです。
ベッドの上から動いちゃダメ、絶対安静状態です。


「標準入力」と「標準出力」と「標準エラー出力」の違い1

絶対安静状態のプログラムさんには、いろいろな不便が出ないようにするために、3本の管がつなげられています。


「標準入力」と「標準出力」と「標準エラー出力」の違い2

1本目の管はプログラムさんに何かを入れてあげるときに使う管です。
お水とか食料を、その管から流し込んであげます。


「標準入力」と「標準出力」と「標準エラー出力」の違い3

2本目の管はプログラムさんから普通に出てくるものが通る管です。
きれいな話ではありませんが、う○ちとか お○っこが通ります。


「標準入力」と「標準出力」と「標準エラー出力」の違い4

3本目の管はプログラムさんから普通は出てこないものが通る管です。
吐血した血とか嘔吐したもんじゃ焼きとかが通ります。


「標準入力」と「標準出力」と「標準エラー出力」の違い5

この3本の管のうち、1本目の管が標準入力です。
プログラムさんに入ってくるものが通る管です。


「標準入力」と「標準出力」と「標準エラー出力」の違い6

2本目の管が標準出力です。
プログラムさんから普通に出てくるものが通る管です。


「標準入力」と「標準出力」と「標準エラー出力」の違い7

3本目の管が標準エラー出力です。
プログラムさんから普通は出てこないものが通る管です。


「標準入力」と「標準出力」と「標準エラー出力」の違い8

また、普通はキーボードからの入力が標準入力になっています。
画面ディスプレイへの出力が標準出力と標準エラー出力になっています。


「標準入力」と「標準出力」と「標準エラー出力」の違い9

出力先がどちらも画面(ディスプレイ)なのが、標準出力と標準エラー出力の違いを分かりにくくさせている原因でしょう。

標準出力と標準エラー出力の違いは管の違いです。

標準出力も標準エラー出力も管の先が普通はディスプレイにつながっています。
そのため違いがないように感じるのでしょう。


「標準入力」と「標準出力」と「標準エラー出力」の違い10

ですが、使っている管が違います。
その気になれば管の先につながっているものを変えられます。
例えば標準出力は画面に、標準エラー出力はファイルにしたりもできるのです。


「標準入力」と「標準出力」と「標準エラー出力」の違い11

標準出力を画面に、標準エラー出力をファイルにすれば、普通の内容とエラーの内容が分かれて便利ですよね。
普通の出力とエラーの出力を分けて管理できるように出力用の管が2本用意されているのです……多分。


スポンサーリンク
書籍画像025
書籍画像056


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
つくって、壊して、直して学ぶ Kubernetes入門
ソフトウェア開発現場の「失敗」集めてみた。 42の失敗事例で学ぶチーム開発のうまい進めかた