タグ

ファイルディスクリプに関するlike_futsalのブックマーク (2)

  • while・read・exec 再入門 - あしのあしあと

    「シェルで1行ずつファイルから読み込む - あしのあしあと」、「絵で見てわかるファイルディスクリプタ・パイプ・リダイレクト - あしのあしあと」に引き続き、「シェルで1行ずつファイルから読み込む」シリーズの3回目。今回は、シェルで1行ずつファイルから読み込む際に用いる、1) while 文、2) read コマンド、3) exec コマンドについてメモしておく(while や read はよく使うにもかかわらず、きちんと理解していなかったなぁと反省しながら)。 1) while 文 while 文は、「条件が true の間、処理を繰り返す」ループ処理に用いる。で、シェルの場合には、条件が true とはつまり数値の“0”のことなので、「コマンドの戻り値が 0 である間、処理を繰り返す」とも言える。さらに言うと、複数のコマンドが並んだ時は、最後の戻り値が全体の戻り値であるので、「最後のコマ

    while・read・exec 再入門 - あしのあしあと
  • 絵で見てわかるファイルディスクリプタ・パイプ・リダイレクト - あしのあしあと

    「シェルで1行ずつファイルから読み込む - あしのあしあと」に引き続き、「シェルで1行ずつファイルから読み込む」シリーズの2回目。今回は、ファイルディスクリプタ(ファイル記述子)、パイプ(パイプライン)、リダイレクト(リダイレクション)のおさらい。今さら感は満載だが、まぁよしとする。なお、エントリで用いている図については、書籍「UNIXネットワークプログラミング入門」を参考に作成した(読んだのは7年前で、今手元にがないのだが、確かこんな絵が書いてあったと思う)。 まず、簡単な凡例を。 で、シェルやコマンドのプロセスが起動した時だが、次の絵のような状態になっている。 プロセスには(すぐに利用可能な)0番、1番、2番のファイルディスクリプタが用意されていて、それぞれ画面と紐づいている(にょろっとした矢印、方向も大事)。0番を「標準入力」、1番を「標準出力」、2番を「標準エラー出力」と呼ぶ(

    絵で見てわかるファイルディスクリプタ・パイプ・リダイレクト - あしのあしあと
  • 1