I know how to run a shell command in Ruby like:
%x[#{cmd}]
But, how do I specify a directory to run this command?
Is there a similar way of shelling out, similar to subprocess.Popen
in Python:
subprocess.Popen(r'c:\mytool\tool.exe', cwd=r'd:\test\local')
Thanks!
cd means change directory.
You can use the block-version of Dir.chdir
. Inside the block you are in the requested directory, after the Block you are still in the previous directory:
Dir.chdir('mydir'){ %x[#{cmd}] }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With