web-dev-qa-db-fra.com

Comment exécuter un script Ruby dans Terminal?

J'ai mis en place tout ce dont j'ai besoin sur mon Mac (Ruby, Rails, Homebrew, Git, etc.) et j'ai même écrit un petit programme. Maintenant, comment puis-je l'exécuter dans un terminal? J'ai écrit le programme dans Redcar et l'ai enregistré en tant que .rb, mais je ne sais pas comment l'exécuter via Terminal. Je veux exécuter le programme et voir si cela fonctionne réellement. Comment puis-je faire cela?

212
Tom Maxwell

Il suffit d'appeler: Ruby your_program.rb

ou

  • démarrez votre programme avec #!/usr/bin/env Ruby,
  • rendre votre fichier exécutable en exécutant chmod +x your_program.rb
  • et faites ./your_program.rb some_param
224
Robin

Ouvrez votre terminal et ouvrez le dossier dans lequel le fichier est enregistré.
Ex /home/User1/program/test.rb

  1. Terminal ouvert
  2. cd /home/User1/program
  3. Ruby test.rb

format ou test.rb

class Test 
  def initialize
   puts "I love India"
  end
end

# initialize object
Test.new

sortie

I love India
30
vijay

En supposant que Ruby interprète est dans votre PATH (il devrait être), vous exécutez simplement

Ruby your_file.rb
21
Sergio Tulentsev

Pour appeler le fichier Ruby, utilisez: Ruby your_program.rb

Pour exécuter votre fichier Ruby en tant que script:

  1. démarrez votre programme avec #!/usr/bin/env Ruby

  2. exécuter ce script en utilisant ./your_program.rb param

  3. Si vous ne pouvez pas exécuter ce script, vérifiez les autorisations pour le fichier.
13
Priti Biyani

Il suffit d'appeler Ruby XXXXX.rb dans le terminal, si l'interpréteur est dans votre variable $ PATH.

(Cela peut difficilement être une chose Rails tant que vous ne l'avez pas lancé.)

4
Jokester

Pour ceux qui ne trouvent pas de solution pour les réponses plus anciennes, je mets simplement mon nom de fichier à la toute première ligne de mon code.

ainsi

 #Ruby_file_name_here.rb

 puts "hello world"
2
Gokigooooks

Bien que ce soit trop tard pour répondre à cette question, mais quand même pour les gars qui sont venus ici pour voir la solution du même problème comme moi et qui n’ont pas obtenu de réponse satisfaisante sur cette page, La raison en est que vous n’avez pas votre fichier sous forme d'extension .rb. Vous l'avez probablement en mode texte simple. Laissez-moi élaborer. Reliez l'ensemble de la solution sur la page (à supposer que votre nom de fichier soit abc.rb ou du moins que vous ayez créé abc):

Tapez dans la fenêtre du terminal:

cd ~/to/the/program/location
Ruby abc.rb

et vous avez terminé

Si l'erreur suivante se produit

Ruby: No such file or directory -- abc.rb (LoadError)

Ensuite, allez dans le répertoire dans lequel vous avez le fichier abc, renommez-le en abc.rb Fermez gedit et rouvrez le fichier abc.rb. Appliquez le même ensemble de commandes et de succès!

2
sinister

Si quelqu'un essaie d'exécuter un script dans un environnement Rails , Rails fournit un coureur pour exécuter des scripts dans Rails contexte via

Rails runner my_script.rb

Plus de détails ici: https://guides.rubyonrails.org/command_line.html#Rails-runner

1
Nikhil Sahu

Terminal ouvert

cd to/the/program/location
Ruby program.rb

ou ajoutez #!/usr/bin/env Ruby dans le premier de votre programme (le script indique qu'il est exécuté à l'aide de Ruby interprète)

Terminal ouvert

cd to/the/program/location
chmod 777 program.rb
./program.rb
1
Akhilan