VarunMurali
VarunMurali

Reputation: 413

Making ruby gems respond to terminal commands

I am extremely new to ruby as well as gem making. I made a simple gem that webscrapes some information depending on the input. However, to use my gem I need to go into the interpreter (irb) and require my gem and then call the method with some parameters.

Suppose the gem is called foo. Suppose the method is called print_website(x) # where x is a string.

I want to be able to do something like:

$ foo test.com

and it should automatically call the method and execute it.

Thanks in advance! Please ask me for clarification if i was unclear! :D

Upvotes: 5

Views: 533

Answers (2)

pkhamre
pkhamre

Reputation: 371

Simple, just run bundle gem mygem -b when creating your gem.

Upvotes: 0

Shamith c
Shamith c

Reputation: 3739

Try it

$ mkdir bin
$ touch bin/foo
$ chmod a+x bin/foo

Edit bin/foo

#!/usr/bin/env ruby

require 'foo'
#Anything you want.......

Add following to Gemfile

 s.executables << 'foo'

Push gem. Now you published command line utility

Upvotes: 5

Related Questions