Question

Je suis en train de faire un petit changement à un script Ruby, donc je peux spécifier un emplacement de dossier lors de l'exécution.

J'étais à peu près sûr que ce serait une tâche facile, même si je ne suis pas un programmeur Ruby, mais je ne trouve pas la syntaxe correcte.

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
Était-ce utile?

La solution

Pour insérer une variable (ou toute expression rubis) dans une chaîne, vous pouvez utiliser #{}:

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

Notez également que la chaîne retournée par gets aura un saut de ligne (\n) à la fin, ce qui est valable dans les noms de dossier bien sûr. Donc, vous devrez utiliser la méthode chomp pour se débarrasser de cela.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top