Search code examples
rubybashrake

Execute bash commands from a Rakefile


I would like to execute a number of bash commands from a Rakefile.

I have tried the following in my Rakefile

task :hello do
  %{echo "World!"}
end

but upon executing rake hello there is no output? How do I execute bash commands from a Rakefile?

NOTE:This is not a duplicate as it's specifically asking how to execute bash commands from a Rakefile.


Solution

  • I think the way rake wants this to happen is with: http://rubydoc.info/gems/rake/FileUtils#sh-instance_method Example:

    task :test do
      sh "ls"
    end
    

    The built-in rake function sh takes care of the return value of the command (the task fails if the command has a return value other than 0) and in addition it also outputs the commands output.