[#14614] 大小文字を無視した比較で ' 帰 ' == ' 蟻 ' ? — "K.Umakoshi" <pegacorn@...>

こんにちは。

18 messages 2001/09/02
[#14615] Re: 大小文字を無視した比較で ' 帰 ' == ' 蟻 ' ? — matz@... (Yukihiro Matsumoto) 2001/09/02

まつもと ゆきひろです

[#14662] How to abondon saved uid privilege — nobu.nakada@...

なかだです。

60 messages 2001/09/05
[#14663] Re: How to abondon saved uid privilege — nagai@... 2001/09/05

永井@知能.九工大です.

[#14672] Re: How to abondon saved uid privilege — nobu.nakada@... 2001/09/05

なかだです。

[#14677] Re: How to abondon saved uid privilege — nagai@... 2001/09/05

永井@知能.九工大です.

[#14678] Re: How to abondon saved uid privilege — matz@... (Yukihiro Matsumoto) 2001/09/05

まつもと ゆきひろです

[#14680] Re: How to abondon saved uid privilege — nagai@... 2001/09/05

永井@知能.九工大です.

[#14685] Re: How to abondon saved uid privilege — Takahiro Kambe <taca@...> 2001/09/05

In message <20010905184635H.nagai@ai.kyutech.ac.jp>

[#14687] Re: How to abondon saved uid privilege — "Akinori MUSHA" <knu@...> 2001/09/05

 ちょっと脱線します。 :)

[#14688] Re: How to abondon saved uid privilege — Takahiro Kambe <taca@...> 2001/09/05

In message <86ofopevkv.wl@archon.local.idaemons.org>

[#14691] Re: How to abondon saved uid privilege — matz@... (Yukihiro Matsumoto) 2001/09/05

まつもと ゆきひろです

[#14693] Re: How to abondon saved uid privilege — Takahiro Kambe <taca@...> 2001/09/05

In message <999700675.662743.18683.nullmailer@ev.netlab.jp>

[#14703] Re: How to abondon saved uid privilege — nagai@... 2001/09/06

永井@知能.九工大です.

[#14707] Re: How to abondon saved uid privilege — Takahiro Kambe <taca@...> 2001/09/06

In message <20010906111828R.nagai@ai.kyutech.ac.jp>

[#14708] Re: How to abondon saved uid privilege — nagai@... 2001/09/06

永井@知能.九工大です.

[#14709] Re: How to abondon saved uid privilege — Takahiro Kambe <taca@...> 2001/09/06

In message <20010906132656Z.nagai@ai.kyutech.ac.jp>

[#14728] Re: How to abondon saved uid privilege — nagai@... 2001/09/06

永井@知能.九工大です.

[#14729] Re: How to abondon saved uid privilege — Takahiro Kambe <taca@...> 2001/09/06

In message <20010906174440D.nagai@ai.kyutech.ac.jp>

[#14732] Re: How to abondon saved uid privilege — nagai@... 2001/09/06

永井@知能.九工大です.

[#14774] Re: How to abondon saved uid privilege — nagai@... 2001/09/12

永井@知能.九工大です.

[#14841] Re: How to abondon saved uid privilege — nagai@... 2001/10/02

永井@知能.九工大です.

[#15026] setuid and seteuid — nagai@... 2001/11/02

永井@知能.九工大です.

[#15030] Re: setuid and seteuid — Tanaka Akira <akr@...17n.org> 2001/11/03

In article <20011102175733K.nagai@ai.kyutech.ac.jp>,

[#15032] Re: setuid and seteuid — nagai@... 2001/11/03

永井@知能.九工大です.

[#14743] [BUG] $_ on thread switching — nobu.nakada@...

なかだです。

24 messages 2001/09/07
[#14746] Re: [BUG] $_ on thread switching — nobu.nakada@... 2001/09/07

なかだです。

[#14747] Re: [BUG] $_ on thread switching — matz@... (Yukihiro Matsumoto) 2001/09/07

まつもと ゆきひろです

[#14748] Re: [BUG] $_ on thread switching — nobu.nakada@... 2001/09/08

なかだです。

[#14750] Re: [BUG] $_ on thread switching — matz@... (Yukihiro Matsumoto) 2001/09/08

まつもと ゆきひろです

[#14752] Re: [BUG] $_ on thread switching — nobu.nakada@... 2001/09/08

なかだです。

[#14753] Re: [BUG] $_ on thread switching — matz@... (Yukihiro Matsumoto) 2001/09/08

まつもと ゆきひろです

[#14755] Re: [BUG] $_ on thread switching — nobu.nakada@... 2001/09/08

なかだです。

[ruby-dev:14609] Re: $stdout への代入 (再考)

From: Koji Arai <JCA02266@...>
Date: 2001-09-01 07:32:25 UTC
List: ruby-dev #14609
新井です。

In message "[ruby-dev:14605] Re: $stdout への代入 (再考)"
  on 31 Aug 2001 18:19:07 +0900,
  Kazuhiro NISHIYAMA <zn@mbf.nifty.com> wrote:
> In <200108292231.HAA18463@ums509.nifty.ne.jp>
> On Thu, 30 Aug 2001 07:31:55 +0900
> Koji Arai <JCA02266@nifty.ne.jp> wrote:
> >         p obj = File.open('/tmp/file', 'w') # => #<File:0x401a6b44>
> >         p obj.fileno                        # => 4
> >         # これ以降の出力は実際には /tmp/file の内容です
> >         p $stdout = obj                     # => #<File:0x401a6b44>
> >         p $stdout.fileno                    # => 4
> >         p STDOUT.fileno                     # => 1
> 
> pなどの出力先は$defoutだと思うのですが、$stdoutと$defoutの
> 関係はどうなっているのでしょうか?
> ドキュメントには$stdoutをかえると$defoutも変わるというのは
> 書いていないようですが。

わかりにくかっただろうとは思うのですが、前のメールで

|	 $stdout = File.open(file, 'w')
|
|    を行うと、以後 $stdout への出力は file への出力になると同時に
|    標準出力(STDOUT)への出力も file への出力になります。ただし、
|    $stdout と STDOUT の fd の値は異なります。

と書いた通りです。$stdout への代入は、通常の代入の効果だけでなく
元の $stdout が指していた IO を代入された IO にリダイレクトする
という厄介な性質があります。元の STDOUT まで変わってしまうわけで
すね。簡単にコードで書けば

	$stdout = foo
は、
	$stdout.reopen(foo)
	$stdout = foo        # <- ここでは普通の代入の意

です。上で reopen を使ってますが、実際に変更するのは fd と出
力先の対応の変更だけなので $stdout.dup2(foo) というメソッド
があるものと考えて置き換えればよいかな。

私の提案は、$stdout への代入に代入の意味をなくそうという案に
なるのでかなり以外な挙動(Rubyの定義とはかけ離れたもの)になっ
てしまうのが難点ですね。コードで書けば

	$stdout = foo
は、
	$stdout.dup2(foo)
です。やっぱやりすぎか。

で、なぜ $stdout に特殊な意味があるかは [ruby-dev:12496] で
まつもとさんが説明されてました。

--
新井康司 (Koji Arai)

In This Thread

Prev Next