No.3ベストアンサー
- 回答日時:
"出力" ”先”
つまり、データーの表示先を切り替える事ができる、または選ぶ事ができるシステムでは、そのような言い方をする。
これと同じで、”入力先”も選べますね。マウスやキーボード、今では、タッチパネルなど。
将来は、出力先 => テレビ、腕時計、ヘッドセット、電子レンジ、エアコン、冷蔵庫、自動車 等、家電などの融合マシンになるでしょう。
へたすると、人間の脳なんてことになるかもしれません。実際、出力先を、人間の脳にして、腕、手を動かす義肢が実用化されています。
入力は、人間の脳が発する微弱な電流です。それを、義手の手のモーターの動作に替えています。テレビで実験で5本の指で物を掴む、握る、なんて動作をしていました。まるで映画の世界でしたよ。
実際にひじからしたが無い障害者に手伝ってもらって、実験していました。
で、”標準”とはですが、普通想定される、デバイスが”モニター” ですので、”標準” とは、”コンソール” つまり、シェルのメイン(アクティブ)に出力されます。
出力先を想定するということは、出力するデーターを規定のデータにそろえて、そこに合うように変換して、そのデバイスの規定通りにインターフェースに渡す事を言います。
つまり、入力側にも例えば、テレビの音、映像入力端子があるように、違うようになっていれば、別データーとして扱えるので、
エラー出力先も別ソケットに渡せば、想定されたデバイスに渡してくれるだけです。
ただ、コンピューターの世界ですので、たいてい論理デバイスである場合が多いです。
そういった意味で ”リダイレクト” とは論理デバイスに渡すソケットを、別ソケットにつけ変える事をいいます。
冷蔵庫とか、電子レンジのコンセントを壁にある、コンセントから、たこ足配線可能なタップに変えることと同じ事です。
この回答へのお礼
お礼日時:2012/05/09 02:14
有難うございます。
「標準」とはデバイスだと「モニター」なのですのね・・。
ちなみに「シェルのメイン(アクティブ)に出力」とは、
具体的にはどういったイメージなのでしょうか。
No.6
- 回答日時:
Linuxではファイルやコンソールなど入出力の対象を、ファイルディスクリプタという番号で表します。
標準とは、入力に0番、出力に1番のファイルディスクリプタを使う約束という意味です。ファイルを開いたときディスクリプタが何番になるか、通常は前もって分かりません。ただしディスクリプタは複製でき、複製するとその時点で使っていない一番小さい番号が新たに割り当てられます(そういう機能をOSが提供しています)。
出力をファイルにリダイレクトするプログラムは
・まずファイルを開く。何番かのディスクリプタが割り当てられる。
・1番(標準出力:デフォルトはコンソール)を閉じる。
この時点で最小の未使用番号は1番となる。
・開いたファイルのディスクリプタを複製すると1番が割り当てられる。
・1番に出力するとリダイレクト先のファイルに書き込まれる。
パイプによるリダイレクトも同じ要領です。パイプという特殊なファイルを作り、0番(標準入力)と1番(標準出力)を閉じて、それぞれパイプを複製すると0番と1番が接続されます。あとは出力側のプログラムが1番に書き出し、入力側のプログラムが0番から読み込めば通信できます。
つまり0番を入力・1番を出力と約束しておけば、わざわざ通信相手のプログラムにディスクリプタの番号を伝える必要がなくなり、プログラムが簡単になります。
No.5
- 回答日時:
コンピュータの歴史を学ばないとピンとこないと思います。
パソコンの歴史はここ20年くらいです。
その前は大型コンピュータのタイムシェアリングサービスと言われるもので、個人の端末機器で大型コンピュータと接続して、そのリソース、すなわち、大型コンピュータセンタの機器を使って、コンパイル、リンケージ、実行といった課程でコンピュータを利用していました。
この時、表示の指示で、どこに表示するかの指示を出す際、画面に出すことでスピードが早い利点を基本としていました。
このときの既定値として、画面出力設定にしていたということです。
今でも、大学関係や、スーパーコンピュータを利用する場合は、端末機器で、大型コンピュータの並行処理を利用する場合は、タイムシェアリングを利用しています。
No.4
- 回答日時:
MS-DOS全盛期だと、逆に標準出力は理解しやすかった気もしますね。
最小構成で、ちょっとしたテキストファイルを作る場合に
COPY CON TEST.TXTとかやっていましたし
COPY TEST.TXT PRNでプリントアウトする場合もありました。
ソフトウェアは、対話的に操作するものと、自動処理し自動終了するものに大別できます。
前者はアプリケーションソフトウェアやユーティリティーソフトウェアなどいくつかがあり…
後者は、コマンドと総称されます。
コマンドには、シェルの標準コマンドと外部コマンドがあるのは、MS-DOS系でもUNIX系でも同様です。
アプリケーションソフトなら、ファイルメニューから保存を選んだりするわけですが…
コマンドは、処理するからには、その結果をどこかに出力する必要があります。
ですから、その結果をコンソールに表示するのが、その自然なカタチです。
MS-DOSでもDIRコマンドやCOPYコマンドなどの結果が画面に出力されます。
そして、標準出力は、なんらかのデバイスやファイルなどに変更できます。
また、標準入力としてのキーボードは、他のコマンドやなんらかのデバイスに変更できます。
(正確には他のコマンドとの受け渡しは、標準出力と標準入力が繋がるカタチで実現されます)
MS-DOSでは、予約ファイル名というカタチで扱えるデバイスがいくつかあり…
UNIX系OSでは、デバイスファイルとして扱うのが、ほとんどのデバイスの基本的操作手段です。
たとえば、関連する設定が整っていれば、cat /dev/video0 test.mpgでTV録画ができる場合もあります。
MS-DOSには、全盛期に録画システムなどなかったためもあり、こういう手段での録画はできません。
(Windowsでは録画専用コマンドを使うか、録画システムやアプリケーションソフトを必要とします)
指定しなければ、画面に表示するよってのが標準出力ですから
バッチファイルやシェルスクリプトで何も表示しなくて良いよってときは
MS-DOSでは出力先をNULに指定し、UNIX系OSでは/dev/nullに指定します。
表示しなくてもいいけど、記録はとっておきたいという時はリダイレクトでファイルに保存したりします。
記録管理を重視するなら、記録を日時を含むユニークなファイル名で蓄積しますが…
単純に、>>による追記リダイレクトで、一応保存しておくという使い方もあります。
UNIX系OSでは、歩きながら鼻歌を歌うくらいに、ごく当たり前に
自動処理/終了するコマンドを使い、また複数組み合わせて多様な処理ができます。
それは、それを前提にしたソフトが充実することによって成立しています。
たとえば、キーワード指定で自動録画された、たくさんのファイルの中から
ls -lh *.ts|grep "ワンピース"|wc -l
といった一行の処理で、指定したキーワードをファイル名に含むファイルの数を確認できます。
MS-DOS,Windowsで真似しようとすると、wcコマンドに相当するものが標準装備されていません。
まぁ、ほとんどにオープンソース実装があるから、MS-DOSへ移植されているものも多いんですけどね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dirコマンドでフォルダ内ファイ...
-
ラズパイで『’test.service’をs...
-
ファイル名についている「-」と...
-
テキストファイルから最終行の抽出
-
ピクチャクリッピングのファイ...
-
作成日時でのファイル検索
-
コマンドプロンプト dir でのソ...
-
DOSコマンドのFOR文で空白を含...
-
Windowsバッチファイルで、隠し...
-
ファイル名の -(ハイフン)を _(...
-
特定の更新日付のファイルのみ...
-
「Vmmem」のメモリ使用量が高い...
-
oracleの文字コードとlinuxサー...
-
rm コマンド
-
DOSのコマンドで、隠しファイル...
-
batファイルの強制終了を回避し...
-
lsでは一画面ずつ表示できませ...
-
ネームサーバーがうまく動きません
-
ZIPファイルの作成をコマンドか...
-
ファイル名一覧の印刷
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dirコマンドでフォルダ内ファイ...
-
ファイル名についている「-」と...
-
ラズパイで『’test.service’をs...
-
テキストファイルから最終行の抽出
-
DOSコマンドのFOR文で空白を含...
-
DOS コマンドの~zfの意味を教え...
-
ファイル名一覧の印刷
-
数字を複数回繰り返す正規表現...
-
xcopyのエラー情報のはき...
-
Linuxで標準出力したファイルの...
-
oracleの文字コードとlinuxサー...
-
batファイルの強制終了を回避し...
-
コマンドプロンプト dir でのソ...
-
Windowsバッチファイルで、隠し...
-
ftpコマンドで丸ごとダウン...
-
ファイル編集について
-
作成日時でのファイル検索
-
特定の更新日付のファイルのみ...
-
ピクチャクリッピングのファイ...
-
ファイル名の -(ハイフン)を _(...
おすすめ情報