Lo más fácil/limpio, es explicitamente usar un archivo:
>> file = File.open("foo.log", "a")
>> at_exit { file.close }
>> cats.collect {|e| file.puts e.id, e.name }
Así sólo tirás al archivo lo que querés guardar.
*Creo* que también podés hacer STDOUT.reopen("foo.log"), buscá en la
documentación; eso debería hacer que todo lo que tires al stream de stdout
caiga en ese archivo, pero no me acuerdo bien.
Y la más fea de todas, que si la hacés Dios va a matar un gatito(*) es
def puts(*args)
File.open("foo.log", "a") {|f| f.puts(*args) }
end
No provoques la muerte de un gatito.
-foca
(*) soy ateo, pero igual creo que existe un Dios que mata gatitos cuando
hacés estas cosas.
2009/10/22 gustavo c <[email protected]>
> Hello rails fans,
> quiero la salida de un comando de de rails script/console
> mandarlo a un archivo
>
> ejemplo, tengo una collecion (conjunto) de categorias en la variable
> cats y quiero la salida a un archivo
> >> cats.collect {|e| puts e.id, e.name}
>
> estoy trabajando en Ubuntu
> Gracias
> --
> gustavo c
> _______________________________________________
> Ruby mailing list
> [email protected]
> http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
>
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar