Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在系列中执行5个不同的ruby文件_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 如何在系列中执行5个不同的ruby文件

Ruby on rails 如何在系列中执行5个不同的ruby文件,ruby-on-rails,ruby,Ruby On Rails,Ruby,我是ruby新手,我尝试在一个文件夹中运行5个不同的文件。我想把它们一个接一个地串联起来 我的文件列表如下: Scripts/aaa. rb Scripts/bbb. rb Scripts/ccc. rb Scripts/ddd. rb Scripts/eee. rb 我的脚本应该先运行aaa.rb,然后再运行rest创建另一个ruby脚本以按顺序运行它们 ["aaa", "bbb", "ccc", "ddd", "eee"].each do |name| system("ruby

我是ruby新手,我尝试在一个文件夹中运行5个不同的文件。我想把它们一个接一个地串联起来

我的文件列表如下:

Scripts/aaa. rb

Scripts/bbb. rb

Scripts/ccc. rb

Scripts/ddd. rb

Scripts/eee. rb

我的脚本应该先运行
aaa.rb
,然后再运行rest

创建另一个ruby脚本以按顺序运行它们

["aaa", "bbb", "ccc", "ddd", "eee"].each do |name|
  system("ruby #{name}.rb") #give the full path of the file here
end
使用,执行以下操作:


根据您的操作系统,您可以使用批处理文件或shell脚本。无论哪种情况,这正是他们的目的。假设在文件上设置了可执行位:

在*nix或Mac OS上:

#!/bin/sh

Scripts/aaa.rb 
Scripts/bbb.rb 
Scripts/ccc.rb
Scripts/ddd.rb 
Scripts/eee.rb
作为一个简单的脚本

对于更“干燥”的东西:

如果未设置可执行文件位,请在文件名前面加上Ruby可执行文件的路径,如:

/usr/local/bin/ruby Scripts/aaa.rb

有很多其他方法可以指向Ruby可执行文件,因此您的里程可能会有所不同。

您使用的是什么操作系统?最简单的方法是通过批处理或shell脚本执行此操作。这就是他们在那里的目的。
#!/bin/sh

pushdir Scripts
for i in aaa bbb ccc ddd eee
do
  $i.rb
done
popdir
/usr/local/bin/ruby Scripts/aaa.rb