En realidad, lo que estoy buscando es poder relanzar
un script de ruby (haciendo "exec") exactamente de la
misma manera que fue lanzado originalmente. Mi idea es
tener uno o varios scripts como SCGIs y hacer que se
reinicien solos cuando escriba ":w" en el vi. La parte
de hacer que chequeen, tengo un prototipo, pero la
parte que hacen exec me encontré que no sé como hacer
para saber exactamente que intérprete usaron (ruby o
rubyw en windows) ni que parámetros le pasaron al
intérprete. La idea es que pueda invocar al mismo
script de varias maneras distintas y que cuando haga
"exec" para cargarlo lo se invoque de la misma manera
que cuando se cargó originalmente. Y quiero poder
hacer esto tanto en Windows como Linux (por eso no me
sirvió usar ENV("_") ).

Muchas gracias por ponerle onda y buscar en
alternativas nuevas.

Aureliano.


> Windows no esta soportado en mi implementación ....
> :D
> 
> Si ruby lo tenés instalado en windows con  One-Click
> Installer [1], mirá
> con el regedit la definición de los tipos rbFile [1]
> y rbwFile [2] que
> te hace ejecutable los archivos con esa extensión
> por defecto, por lo
> tanto no requerirías en primera instancia conocer
> donde esta el
> ejecutable de Ruby, con solo ejecutar 'rutina.rb'
> desde DOS o doble
> click con el explorer sale andando.
> También tenés una variable de ambiente, al menos en
> XP, que se llama
> PATHEXT que tiene las extensiones que se consideran
> ejecutables y en que
> orden se busca para ejecutar.
> 
> 
> [1] http://rubyforge.org/projects/rubyinstaller/
> [2] HKEY_CLASSES_ROOT\rbFile\Shell\open\command
> [3] HKEY_CLASSES_ROOT\rbwFile\Shell\open\command
> 
> 
> 
> 
> On Mon, Jun 12, 2006 at 11:07:17AM -0300, Aureliano
> Calvo wrote:
> > ?Y en Windows?
> > Por lo que me fij? en ENV no est? el ?ltimo
> comando
> > ejecutado :(. En particular ENV['_'] == nil.
> > 
> > > Si lo que quer?s es saber como se ejecut? el
> script
> > > ... por tu ejemplo 
> > > necesitas saber
> > > tambi?n "c:\ruby\bin\rubyw", en linux deber?as
> > > agregar ENV['_'] (es la 
> > > variable del ?ltimo comando ejecutado)
> > > al ejemplo de Nelson, porque el dato de la l?nea
> de
> > > comando completa no 
> > > la tiene
> > > el script sino en el shell linux o procesador de
> > > comandos.
> > > Vos est?s ejecutando c:\ruby\bin\rubyw,
> pas?ndole
> > > como par?metros 
> > > "scriptname param1 param2"
> > > y a su ves, cuando se arma el ambiente y se
> ejecuta
> > > scriptname toma como 
> > > par?metros param1 param2,
> > > vos est?s "parado" en el ambiente creado por
> rubyw,
> > > no en el creado por 
> > > el procesador de comandos
> > > ... es tarde, pero me parece que tiene sentido
> ...
> > > 
> > > Saludos
> > >  
> > > 
> > > Nelson Fernandez wrote:
> > > > algo asi podr?a servir ?
> > > >  
> > > > puts (__FILE__ + ' ' + ARGV.join(' ')).strip
> > > >
> > > >
> > > >
> > > >
> > > > Aureliano Calvo wrote:
> > > >   
> > > >> Hola a todos,
> > > >> saben como hacer para obtener la l?nea de
> comando
> > > >> completa que se us? para invocar el
> int?rprete de
> > > >> ruby?
> > > >>
> > > >> Hasta ahora lo que encontr? (y que aparte ya
> > > sab?a :(
> > > >> ) es que $0 es el nombre del script invocado
> y
> > > ARGV (o
> > > >> "$*") son los par?metros pasados al script. Y
> una
> > > cosa
> > > >> nueva (pero que no tiene mucho que ver) es
> que $<
> > > (o
> > > >> ARGF) es un archivo que tiene el texto de
> todos
> > > los
> > > >> archivos pasados por l?nea de comando (?esto
> > > viene de
> > > >> Perl?).
> > > >>
> > > >> Volviendo al tema original, estoy buscando
> alguna
> > > >> forma de armar el comando original. Por
> ejemplo
> > > si
> > > >> invoqu? el script como "c:\ruby\bin\rubyw
> > > myscript.rb
> > > >> param1 param2" me interesa alguna forma de
> > > recuperar
> > > >> la l?nea completa. Estoy buscando esto para
> hacer
> > > un
> > > >> script SCGI que se autocargue de nuevo a s?
> mismo
> > > >> cuando se modifica (haciendo exec) y que el
> mismo
> > > sea
> > > >> multiplataforma.
> > > >>
> > > >> Muchas gracias,
> > > >> Aureliano.
> > > >>
> > > >> estuve googleando y no encuentro la respuesta
> a
> > _______________________________________________
> ruby mailing list
> [email protected]
>
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
> 



        
        
                
___________________________________________________________ 
1GB gratis, Antivirus y Antispam 
Correo Yahoo!, el mejor correo web del mundo 
http://correo.yahoo.com.ar 

_______________________________________________
ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a