[#44725] Set[Set[1]]==Set[Set[1]] は偽? — "5.5" <5.5@...>

5.5 です。

22 messages 2008/03/04

[#44782] $stdin.rewind が exec した子プロセスに伝わらない? — SATOH Fumiyasu <fumiyas@...>

さとうふみやす @ OSS テクノロジです。

11 messages 2008/03/17
[#44783] Re: $stdin.rewind が exec した子プロセスに伝わらない? — Kazuhiro NISHIYAMA <zn@...> 2008/03/17

西山和広です。

[ruby-list:44713] パイプ経由コマンド実行?

From: "morita" <m-morita@...>
Date: 2008-03-03 03:09:53 UTC
List: ruby-list #44713
もりたと申します。お世話になります。

パイプ経由で、linux built-in command は以下のように
動作するのですが、

 % ruby
 a = "ABCDE\n"
 open("|cat","w").write a
 ^D
 ABCDE

しかし、スクリプトの実行を指定すると STDIN にうまく渡らない
ようです。例えば
 % cat t.rb
 x = STDIN.read
 p x
これを実行すると、
 % ruby
 a = "ABCDE\n"
 open("|ruby t.rb","w")
 ^D
 "" <# ????
これは仕様上このようなっているのでしょうか?
バージョンは以下です。
 % ruby -v
 ruby 1.8.5 (2006-08-25) [1386-linux]

ご教示よろしくお願いいたします。


In This Thread

Prev Next