how to execute-shell-commands by ruby
Execute shell commands
There are a number of different ways to run shell commands from Ruby.
The exec command
Kernel#exec replaces the current process and runs the command:
exec('ls ~') # Nothing after this command is executed
This might be a bit impractical, so have a look at the other options.
Backticks or %x shortcut
Place your command inside backticks (`) or execute it within %x() and it will return the output of this command:
`ls ~` => "Applications\nDesktop\nDocuments" %x(ls ~) => "Applications\nDesktop\nDocuments"
The system command
Use Kernel#system and it will return true (command run successfully), false (unsuccessful) or nil (command execution failed):
system('ls ~') => true
For all of these methods, you can access the PID and exit status of the unix process via the$? variable:
$?.pid => 11988 $?.exitstatus => 0
http://rubyquicktips.com/post/5862861056/execute-shell-commands

浙公网安备 33010602011771号