[英]How to get a list of files in a directory with Ruby?
这是我到目前为止的内容:
class FileRenamer
def RenameFiles(folder_path)
baseDirectory = folder_path
files = Dir.glob("*")
end
end
puts "Renaming files..."
renamer = FileRenamer.new()
files = renamer.RenameFiles("/home/papuccino1/Desktop/Test")
puts files
puts "Renaming complete."
问题在于它似乎正在从运行.rb文件的目录中获取文件。
如何将目录设置为想要的位置? 注意,我那里有baseDirectory变量。
files = Dir.glob(File.join(folder_path, "*"))
files = Dir.glob(folder_path + '/*')
...
Dir.chdir(baseDirectory)
files = Dir.glob("*")
...
顺便说一句,在Ruby中使用CamelCase作为变量和方法是不好的(它仅用于模块和类)。 使用snake_case。
如果您只想要文件
class FileRenamer
def RenameFiles(folder_path)
files = Dir.glob( File.join(".","*")).select{|x| test(?f,x)}
end
end
Find.find(@path) do |path|
if FileTest.directory?(path)
@dirs.push(path)
else
@files.push(path)
end
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.