いくつかの結果を生成するために、たくさんのルビスクリプトを実行する必要があります。どちらの順序でも問題ありません。私はちょうどRuby file1.rb、Ruby file2.rb、Ruby file3.rb ...を1つずつ実行したくありません。1つのコマンドを実行し、複数のRubyファイルを実行する
すべてのファイルをグループ化してコマンドを1回だけ実行して、それらをすべて実行するスクリプトを作成できますか?
いくつかの結果を生成するために、たくさんのルビスクリプトを実行する必要があります。どちらの順序でも問題ありません。私はちょうどRuby file1.rb、Ruby file2.rb、Ruby file3.rb ...を1つずつ実行したくありません。1つのコマンドを実行し、複数のRubyファイルを実行する
すべてのファイルをグループ化してコマンドを1回だけ実行して、それらをすべて実行するスクリプトを作成できますか?
私はそれがルビースタイルとrake
宝石を使用して行うだろう。
私は「rakefile.rb」という名前のファイルを作成し、これはそのコンテンツのようになります。
task :default do
FileList['file*.rb'].each { |file| ruby file }
end
その後、私は私のお気に入りのシェルでrake
を呼ぶだろうと私はそれを楽しんでいました。
ボーナス:マルチプラットフォームです。
はrunall.rb
は含まれていたことがあります:
(1..3).each do |i|
`ruby file#{i}.rb`
end
とruby runall.rb
を呼び出します。
ruby ruby1.rb;
ruby ruby2.rb;
etc.
をそして
sh startruby.sh
を実行し、それがすべて出せます:
あなたはこのようになりますshスクリプトと呼ばれるstartruby.shを作ることができは(この例では動作しません) rubyスクリプトを実行します。 Offcourseでは、forループなどでより高度にすることもできますが、これは最も簡単で簡単な方法です。
あなたが行うことができますbashを使用していて、実行したいすべてのルビーのファイルが現在のディレクトリにあると仮定すると:
for file in `ls ./*.rb`; do
ruby $file
done