[Ruby] конвейеры
Dennis Vshivkov
walrus на amur.ru
Пт Июн 1 10:51:55 MSD 2007
On Fri, Jun 01, 2007 at 10:41:32AM +0400, Timur Batyrshin wrote:
> Как можно на Ruby реализовать следующие перловые конструкции?
> open (f, "| mail root на domain.org")
Именно так.
> или
> open(f, "tail -f status.log")
> Если делать File.open("| mail root на domain.org","w"), то он создает файл
> с таким именем, но не передает данные на вход другой программы как
> предполагалось.
$ ls -l a
ls: a: No such file or directory
$ ruby -e 'f = open("| cat > a", "w"); f.puts "foobar"'
$ ls -l a
-rw-rw-r-- 1 walrus walrus 7 Jun 1 18:49 a
$ ruby -e 'f = open("| cat a", "r"); puts f.gets'
foobar
$
Т.е., Kernel::open, а не File.open.
--
/Awesome Walrus <walrus на amur.ru>
...Но Будда в сердце, а бес -- в ребро, молчать сейчас -- это срам...
Подробная информация о списке рассылки Ruby