[ruby-dev:31742] Re: FileTest.identical? with IO

From: SATOH Fumiyasu <fumiyas@...>
Date: 2007-09-06 01:42:15 UTC
List: ruby-dev #31742
さとうふみやす @ OSS テクノロジです。
# Could not be delivered to <ruby-dev@ruby-lang.org> 
# As the remote domain doesnt exist.と言われたので再試行。何故?

At Wed, 5 Sep 2007 21:41:51 +0900,
sheepman wrote:
> FileTest.identical? には引数として IO オブジェクトも渡すことが
> できます。しかし IO が通常ファイルのそれかを検査していません。ですので、
> 以下のようなことが起こってしまいます。
> 
> $ cat t.rb
> p FileTest.identical?($stdin, $stdout)
> 
> $ ruby-1.8 -v t.rb
> ruby 1.8.6 (2007-09-01 patchlevel 5000) [i686-linux]
> true
> 
> これはこういうものなのでしょうか。

そういうものじゃないでしょうか?

  $ ruby -e 'p $stdin.stat; p $stdout.stat'

dev, ino, rdev が同一 (同一の端末デバイスファイル)
なんですから。

  $ ruby -e 'p $stdin.stat; p $stdout.stat' |tee /dev/null
  $ ruby -e 'p $stdin.stat; p $stdout.stat' < /dev/null

-- 
-- Name: SATOH Fumiyasu / fumiyas @ osstech.co.jp
-- Business Home: http://www.OSSTech.co.jp
-- Personal Home: http://www.SFO.jp/blog/

In This Thread