12

重複の可能性:
ruby​​ ファイルを実行するには?

私は Ruby を学び始めており、ターミナルで Ruby クラスを実行するのに苦労しています。

Sublime Text エディターで「hello world」というクラスを作成しました。を使用してコンパイルできますruby hello.rbが、どうすれば実行できますか?

ルート ディレクトリのターミナルに移動して入力rails cすると、コンソールが表示されました。インスタンスの作成方法を教えてください。どのコンソールを使用しますか?

4

3 に答える 3

16

Rubyは解釈されるので、別のコンパイル手順について心配する必要はありません。実行コマンドですruby hello.rb

標準の対話型シェル(REPL)はirbです。

于 2012-10-16T18:08:05.190 に答える
1

これは非常に単純な作業だと思います。ターミナルに貼り付けruby <your script name>.rb

これですべてです。Ruby は lang を解釈します。コンパイラはまったく存在しません。通訳のみ。私は Ruby を数回しか使用していませんが、メソッド hello を実行する必要があると思います。コードはクラスのみを作成し、他には何も作成しません。まずRubyを学び、次にRoRを学ぶべきです。

于 2012-10-17T16:29:20.090 に答える
0

他の人が指摘したように、runningruby hello.rb スクリプトを実行します。コンパイルは必要ありません (Ruby 仮想マシンの舞台裏を除きますが、気にする必要はありません)。

コメントで提供したファイルのコードに基づいて(改行とインデントを入れました):

class Hello
  def say
    puts "hello World"
  end
end

...スクリプトが何もしていないように見える理由は、クラスとメソッドを定義するだけで、クラスのインスタンス化やメソッドの呼び出しを行わないためです。あなたは(別のコメントで)呼び出す正しい考えを持っていましたh = Hello.new(); その後、置くh.sayと、「hello World」と表示されます。

(これら 2 つのメソッド呼び出しを含め、括弧は通常は必要ありませんが、重要な場合もあります。さまざまな慣習がありますが、ほとんどの Rubyist は引数なしでメソッドを呼び出す場合は括弧をスキップしnewますsay

EDIT: rails cRuby言語とは別のエンティティであるRuby on Rails用です(Rubyで書かれていますが)。

于 2012-10-16T21:47:12.710 に答える