Используйте переменную с Dir.glob - PullRequest
1 голос
/ 28 ноября 2010

Я пытаюсь внести небольшое изменение в скрипт Ruby, чтобы я мог указать местоположение папки во время выполнения.

Я был почти уверен, что это будет легко, хотя я не программист на Ruby, но не могу найти правильный синтаксис.

puts "Enter folder name and press enter: "
folder = gets

files = Dir.glob("folder/[0-100]*.txt"); # What is the correct syntax to use, so the content of the variable folder will be used?

puts files

1 Ответ

1 голос
/ 28 ноября 2010

Чтобы вставить переменную (или любое выражение ruby) в строку, вы можете использовать #{}:

Dir.glob("#{folder}/[0-100]*.txt")

Также обратите внимание, что строка, возвращаемая gets, будет иметь новую строку (\n) в конце, что, конечно, недопустимо в именах папок.Поэтому вам придется использовать метод chomp, чтобы избавиться от этого.

...