Backquote command execution path problem

C:\projeto>irb
irb(main):001:0> `cd`
=> "C:\\projeto\n"

How i change the path that the command will be executed ?

What must happen:

C:\projeto>irb
irb(main):001:0> YOUR_MAGIC_COMMAND("C:\\projeto\\blablabla")
irb(main):002:0> `cd`
=> "C:\\projeto\\blablabla\n"

···

--
(.) CAMPANHA DA FITA ASCII ( http://arc.pasp.de/)
/ \ Contra formatos proprietarios

Felipe Navas wrote:

C:\projeto>irb
irb(main):001:0> `cd`
=> "C:\\projeto\n"

How i change the path that the command will be executed ?

What must happen:

C:\projeto>irb
irb(main):001:0> YOUR_MAGIC_COMMAND("C:\\projeto\\blablabla")

Dir.chdir('C:\\projeto\\blablabla')

irb(main):002:0> `cd`
=> "C:\\projeto\\blablabla\n"

Greetings.

···

--

Do you want to change the path of the Ruby script? Then no "cd" in any subprocess will help - that only changes the sub process's path. Also, you might be confusing "cd" with "pwd" for printing the path. You probably want this:

irb(main):001:0> Dir.pwd
=> "/home/robert"
irb(main):002:0> Dir.chdir "/tmp"
=> 0
irb(main):003:0> Dir.pwd
=> "/tmp"
irb(main):004:0> `pwd`
=> "/tmp\n"

Kind regards

  robert

···

On 05.01.2007 04:42, Felipe Navas wrote:

C:\projeto>irb
irb(main):001:0> `cd`
=> "C:\\projeto\n"

How i change the path that the command will be executed ?

What must happen:

C:\projeto>irb
irb(main):001:0> YOUR_MAGIC_COMMAND("C:\\projeto\\blablabla")
irb(main):002:0> `cd`
=> "C:\\projeto\\blablabla\n"

Felipe Navas wrote:

C:\projeto>irb
irb(main):001:0> `cd`
=> "C:\\projeto\n"

How i change the path that the command will be executed ?

What must happen:

C:\projeto>irb
irb(main):001:0> YOUR_MAGIC_COMMAND("C:\\projeto\\blablabla")
irb(main):002:0> `cd`
=> "C:\\projeto\\blablabla\n"

YOUR_DIR="C:\\projeto\\blablabla\n"
`cd #{YOUR_DIR}`
=> "C:\\projeto\\blablabla\n"
YOUR_DIR="C:\\projeto"
`cd #{YOUR_DIR}`

···

=> "C:\\projeto\n"

--
Posted via http://www.ruby-forum.com/\.

Thank you Carlos !

···

On 1/5/07, Robert Klemme <shortcutter@googlemail.com> wrote:

On 05.01.2007 04:42, Felipe Navas wrote:
> C:\projeto>irb
> irb(main):001:0> `cd`
> => "C:\\projeto\n"
>
> How i change the path that the command will be executed ?
>
> What must happen:
>
> C:\projeto>irb
> irb(main):001:0> YOUR_MAGIC_COMMAND("C:\\projeto\\blablabla")
> irb(main):002:0> `cd`
> => "C:\\projeto\\blablabla\n"
>

Do you want to change the path of the Ruby script? Then no "cd" in any
subprocess will help - that only changes the sub process's path. Also,
you might be confusing "cd" with "pwd" for printing the path. You
probably want this:

irb(main):001:0> Dir.pwd
=> "/home/robert"
irb(main):002:0> Dir.chdir "/tmp"
=> 0
irb(main):003:0> Dir.pwd
=> "/tmp"
irb(main):004:0> `pwd`
=> "/tmp\n"

Kind regards

        robert

--
(.) CAMPANHA DA FITA ASCII ( http://arc.pasp.de/\)
/ \ Contra formatos proprietarios