Вы также можете использовать свою собственную логику
def self.create_dir_if_not_exists(path)
recursive = path.split('/')
directory = ''
recursive.each do |sub_directory|
directory += sub_directory + '/'
Dir.mkdir(directory) unless (File.directory? directory)
end
end
Так что, если путь 'TMP / A / B / C'
если tmp не существует, создается tmp, затем tmp / a / и т. д. и т. п.