# Issuing Ruby Commands from Rails?

**URL:** <https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260>\
**Category:** Rails\
**Created:** [December 15, 2007, 4:11pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260 "2007-12-15T16:11:38Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [December 15, 2007, 4:11pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260/1 "2007-12-15T16:11:38Z")

</div>

Hello-

I have an application where I would like to issue Ruby commands from a  
Rails application and pipe the resulting stuff from the command line  
into a Rails variable.

Does anyone have a good way to do this?

Example:

Call to Ruby P.:

> ruby callFunction.rb some\_params ( where ‘some\_params’ is given from a form in the Rails app)

Results Returned:

> result - answer1  
> result - answer2  
> …

Ideally then I could have these results stored in a variable to put in  
my view.

Thanks, let me know if this is not clear!

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [December 15, 2007, 5:34pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260/2 "2007-12-15T17:34:47Z")

</div>

def ruby\_command  
@result = `cd /Users/rails/Desktop/;ls`  
end

view  
\<%= @result %\>

A start.

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [December 15, 2007, 6:37pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260/3 "2007-12-15T18:37:02Z")

</div>

I tried this out an when the view is rendered, all I get is what  
@result was.

So in the example below, my view displays this:

Result: `cd /Users/rails/Desktop/;ls`

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [December 16, 2007, 9:24pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260/4 "2007-12-16T21:24:58Z")

</div>

Pete, check that you’re using backticks (and not single-quotes) in  
your code above.

- BD

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [December 15, 2007, 5:48pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260/5 "2007-12-15T17:48:55Z")

</div>

At what point does the command get issued? When the view is rendered?

I’m assuming this would work for Windows environment too?

Thanks!

On Dec 15, 9:34 am, Peter De jong [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [December 16, 2007, 11:48pm UTC](https://www.ruby-forum.com/t/issuing-ruby-commands-from-rails/123260/6 "2007-12-16T23:48:41Z")

</div>

Um. I think all the dude wanted to do was to use Ruby code in Rails.

Something like:  
\<% @result = 1 + 2 %\>  
\<%= @result %\>

Am I wrong?

If you want to run your little ruby file there from your Rails app,  
stick it  
in lib and it will automatically be included if it is a class. If it is  
a  
module you will have to do include ModuleName to include it.

On Dec 17, 2007 6:54 AM, Brian D. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > So in the example below, my view displays this:
> > 
> > > > ## A start.
> > > > 
> > > > Posted viahttp://www.ruby-forum.com/.

–  
Ryan B.

> **[frozenplague.net](http://www.frozenplague.net)**
>
> This domain may be for sale!
