如何获取某个目录中每个文件的相对路径?如果我使用Dir["path/to/folder/*"]
,它会输出整个路径。
答案 0 :(得分:5)
Dir#entries
可能就是你要找的东西:
Dir.entries("dir").each { |f| puts f }
# ⇒ Makefile
# ⇒ text.doc
# ⇒ ...
请注意,结果可能包含.
和..
。为了防止结果中出现这些内容,您可能希望使用Array#reject
(对@iain的信用,该代码段将过滤* nices上的所有隐藏文件):
Dir.entries("dir").reject{ |e| e.start_with? '.' }.each { |f| puts f }
在执行glob
之前,其他选项是Dir#chdir
。
希望它有所帮助。