-1

Я хочу найти конкретное имя файла в определенном каталоге в ruby.

Я попробовал следующее Dir.glob()

file = Dir.glob("/home/prakash/Desktop/*.uploaded")

выход:

/home/prakash/Desktop/abc.uploaded

Но я просто хочу только имя файла в выводе. Я не хочу имя файла с полным путем.

Так как я могу это сделать?

2 ответа2

0

В 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
0

У меня есть простой способ найти только имя файла без полного пути:

file = Dir.glob("/file/path/*.uploaded").join(" ")
filename = file.split('/').last

И это прекрасно работает для меня

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .