知らなかったこと

openメソッドの第一引数の先頭の文字が「|」(パイプ)だと、続く文字列はコマンドとして起動される。

irb(main):019:0> open("| df -k", "r"){|f| f.each{|line| puts line}}
(irb):19: warning: Insecure world writable dir /home/bird, mode 040777
Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
/dev/mapper/VolGroup00-LogVol00
                       9490660   5289220   3711560  59% /
/dev/hda1               101086     15773     80094  17% /boot
tmpfs                   127636         0    127636   0% /dev/shm
=> #<IO:0xb7f70064>