首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用ruby以递归方式在目录中运行文件

您好!您的问题是关于使用 Ruby 以递归方式在目录中运行文件。以下是我的回答:

在 Ruby 中,要以递归方式在目录中运行文件,可以使用 Dir 类和 File 类。以下是一个示例代码:

代码语言:ruby
复制
require 'fileutils'

def run_files_in_directory(directory)
  Dir.foreach(directory) do |file|
    next if file == '.' or file == '..'
    path = File.join(directory, file)
    if File.directory?(path)
      run_files_in_directory(path)
    else
      if File.extname(path) == '.rb'
        puts "Running file: #{path}"
        load path
      end
    end
  end
end

run_files_in_directory('/path/to/directory')

这个代码会递归地遍历指定目录中的所有文件和子目录,并在遇到 Ruby 文件时运行它们。请注意,这个代码仅适用于 Ruby 文件,如果您需要运行其他类型的文件,您需要修改代码以处理这些文件。

在这个示例中,我们使用了 Dir 类的 foreach 方法来遍历目录中的所有文件和子目录。我们还使用了 File 类的 join 方法来构建文件路径,以及 extname 方法来获取文件扩展名。最后,我们使用了 Kernel 模块的 load 方法来运行 Ruby 文件。

希望这个回答能够帮助您解决问题。如果您有其他问题,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券