From: matz@... (Yukihiro Matsumoto) Date: 2000-06-27T16:35:27+09:00 Subject: [ruby-list:23540] Re: [Q] unix のコマンドとのデータ受け渡し方法 まつもと ゆきひろです In message "[ruby-list:23539] [Q] unix のコマンドとのデータ受け渡し方法" on 00/06/27, Sakae Kobayashi writes: |標準入出力からデータを受け渡すタイプのunixコマンドとは、どう |インターフェースしたら良いのでしょうか? | |crypt(1)をrubyから使おうとしてるのですが、cryptの結果をruby側に |うまく取り込めません。( cy.read の所で待ちになってしまいます) やり方は間違ってないと思いますが、出力がcryptのバッファにた まってしまっているのでしょう。close_readでcryptへの書き出し を閉じてやれば良いんじゃないかと。 |--- sample.rb -------------- |class Himitu | def initialize() | printf "Key word: " | @key = $stdin.gets.chomp! | end | | def de(s) | cy = open("|/usr/bin/crypt #@key", "w+") | cy.print( s ) cy.close_read | return cy.read( s.size ) | end |end