Connaitre le dossier parcouru par un each
Bonsoir à tous,
J'ai ce script qui fonctionne mais j'ai quand même un soucis au niveau du résultat, le voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| dir = "/chemin/"
files = []
Dir.entries(dir).each do |file|
next if file == "." || file == ".."
path = dir + file
if File.directory? path
Dir.entries(path).each do |subFile|
next if subFile == "." || subFile == ".."
files.push dir + subFile if subFile.match(/^([0-9]{2}-chapter[0-9]+.markdown)$/)
end
end
end
files.sort!
puts files |
Donc je trouve bien mes fichiers recherché avec ma RegEx, j'ai aussi dans mon tableau files le chemin de la variable dir mais entre les deux il me manque le dossier parcouru par le each qui a la var subFile. J'aimerais pouvoir faire quelque chose comme subFile.path :)
J'ai essayé plein de trucs, y compris d'ailleurs path, realpath et realdirpath dans ce each mais au pire ça ne fonctionne pas (erreur) où alors je me retrouve avec "." ou le nom du fichier mais sans son chemin complet.
Bref, je suis coincé et je n'arrive pas à résoudre ce problème.
Pour résumer je me retrouve avec une chaine de caractère : "/monCheminRelatifMenantAuxFichiers(ma-var-dir)/fichier" au lieu de "/monCheminRelatifMenantAuxFichiers(ma-var-dir)/DOSSIER-MANQUANT/fichier"
Quelqu'un pourrait-il m'aider ? J'espère avoir été assez clair... ;)