Hatena::Grouprubyist

たばさの RSSフィード

03/02(日) 2008

popen

| popen - たばさの を含むブックマーク はてなブックマーク - popen - たばさの

f:id:hatecha:20080303020709p:image

http://rubyist.g.hatena.ne.jp/hatecha/20080301/p1 のつづき。

衝突しないよう、一時ファイルを作らずパイプを使ってみた。

いちおう動くけど、戻り値の受け取りがわからない。(エラーは表示しようとして)

例を見てブロックの最後でio.getsとやったら戻ってこないので、何か違うんだろう。

#cachemail.rb

require "cgi-lib"
require 'open-uri'

input = CGI.new

uri = input["uri"]
address = input["mailto"]
sub = input["subject"]
waitw = input["wait"]
wait = 3
if !(waitw==nil||waitw=="")
  wait = waitw.to_i
end
wait = 3 if wait>60
sub.gsub!(/;/,",")
address.gsub!(/ /,"")
($body="something bad #{uri};#{address};";return) if address==""||uri==""
hatebadd='http://b.hatena.ne.jp/add?mode=confirm&url='+uri
hatebtag='<a href="'+hatebadd+'" name="focus0" onLoad="document.focus0.focus()">add ?b</a>'
$bodytop='<body onLoad="document.focus0.focus()">'
$meta="<meta http-equiv=\"Refresh\" content=\"#{wait};URL=#{hatebadd}\">"

open(uri){|f|
  d=f.readlines*""
  a = IO.popen("mail -s\"#{sub}:#{uri}\" #{address}", "r+") {|io|
  io.puts d
  io.puts
  io.puts uri
  }
  $body = ["#{a}",hatebtag]
}


参考

http://www.ruby-lang.org/ja/man/html/IO.html

こんな感じで絵を描くと印象に残りやすそうだ

こんな感じで絵を描くと印象に残りやすそうだ - たばさの を含むブックマーク はてなブックマーク - こんな感じで絵を描くと印象に残りやすそうだ - たばさの

極力。

しかしコピーできないな。保存のあと修正とかも。

トラックバック - http://rubyist.g.hatena.ne.jp/hatecha/20080302
カレンダー
<< 2008/03 >>
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
archive Error : RSSが取得できませんでした。