[#44713] パイプ経由コマンド実行? — "morita" <m-morita@...>
もりたと申します。お世話になります。
10 messages
2008/03/03
[#44714] Re: パイプ経由コマンド実行?
— Hidetoshi NAGAI <nagai@...>
2008/03/03
永井@知能.九工大です.
[#44716] Re: パイプ経由コマンド実行?
— "m-morita" <m-morita@...>
2008/03/03
もりた です。
[#44725] Set[Set[1]]==Set[Set[1]] は偽? — "5.5" <5.5@...>
5.5 です。
22 messages
2008/03/04
[#44726] Re: Set[Set[1]]==Set[Set[1]] は偽?
— "Ohto, Yasunori" <Yasunori.Ohto@...>
2008/03/05
大戸です。
[#44744] Re: Set[Set[1]]==Set[Set[1]] は偽?
— "5.5" <5.5@...>
2008/03/06
5.5 です。
[#44728] ダウンロードリンクが古い — Kouhei Yanagita <yanagi@...>
こんにちは。柳田です。
10 messages
2008/03/05
[#44745] [ANN] Rails勉強会@東京 第28回のお知らせ — "MOROHASHI Kyosuke" <moronatural@...>
各位
1 message
2008/03/07
[#44769] Ann: Ruby-1.9.0-1 Windowsインストーラパッケージ — arton <artonx@...>
artonです。
4 messages
2008/03/13
[#44773] PHPとの関数対照表 — "tadashi nagao" <tadashi.nagao@...>
長尾です。
7 messages
2008/03/14
[#44782] $stdin.rewind が exec した子プロセスに伝わらない? — SATOH Fumiyasu <fumiyas@...>
さとうふみやす @ OSS テクノロジです。
11 messages
2008/03/17
[#44783] Re: $stdin.rewind が exec した子プロセスに伝わらない?
— Kazuhiro NISHIYAMA <zn@...>
2008/03/17
西山和広です。
[#44785] Re: $stdin.rewind が exec した子プロセスに伝わらない?
— Nobuyoshi Nakada <nobu@...>
2008/03/17
なかだです。
[#44786] Re: $stdin.rewind が exec した子プロセスに伝わらない?
— SATOH Fumiyasu <fumiyas@...>
2008/03/18
さとうふみやす @ OSS テクノロジです。
[#44787] Re: $stdin.rewind が exec した子プロセスに伝わらない?
— Nobuyoshi Nakada <nobu@...>
2008/03/18
なかだです。
[#44788] Re: $stdin.rewind が exec した子プロセスに伝わらない?
— SATOH Fumiyasu <fumiyas@...>
2008/03/18
さとうふみやす @ OSS テクノロジです。
[ruby-list:44714] Re: パイプ経由コマンド実行?
From:
Hidetoshi NAGAI <nagai@...>
Date:
2008-03-03 03:49:35 UTC
List:
ruby-list #44714
永井@知能.九工大です.
From: "morita" <m-morita@ybrain.co.jp>
Subject: [ruby-list:44713] パイプ経由コマンド実行?
Date: Mon, 3 Mar 2008 12:09:53 +0900
Message-ID: <200803030310.m233A2Cc014183@flat01.bekkoame.ne.jp>
> パイプ経由で、linux built-in command は以下のように
> 動作するのですが、
(snip)
> しかし、スクリプトの実行を指定すると STDIN にうまく渡らない
> ようです。例えば
(snip)
> これは仕様上このようなっているのでしょうか?
典型的な I/O のバッファリングに関連する問題かと思います.
書き出し側がバッファにため込んだ状態のまま,
送り出すことなく終了してしまっているためでしょう.
「IO#flush の実行」, 「IO#sync=true に設定」, 「IO#syswrite を利用」
のいずれかで問題を解消できるのではないでしょうか.
つい先日,本 ML での話題になっていた拙著
「Ruby アプリケーションプログラミング」の
「5.2.3 外部コマンドとの通信」が
丁度この問題をテーマとして扱っておりますので,
書店などで見掛けましたら参考にしていただけますと幸いです.
--
永井 秀利 (九工大 知能情報)
nagai@ai.kyutech.ac.jp