我想在 ruby 中的特定目录中找到特定的文件名。
我尝试了以下 Dir.glob()
file = Dir.glob("/home/prakash/Desktop/*.uploaded")
输出:
/home/prakash/Desktop/abc.uploaded
但我只想输出文件名。我不想要带有完整路径的文件名。
那么我该怎么做呢?
答案1
在 Ruby 中,有一个文件类。
File.basename("/home/prakash/Desktop/abc.uploaded")
以上将返回abc.uploaded
由于我不确定您是否需要扩展,因此您可以使用以下方法删除它
File.basename("/home/prakash/Desktop/abc.uploaded", ".uploaded")
以上将返回abc
或者你可以执行字符串操作
'/home/prakash/Desktop/abc.uploaded'.split('\\').last
答案2
我找到了一种简单的方法来查找没有完整路径的文件名:
file = Dir.glob("/file/path/*.uploaded").join(" ")
filename = file.split('/').last
对我来说效果很好