En Ruby, yo soy capaz de hacer¿Cómo dividir una cadena de directorio en Ruby?
File.dirname("/home/gumby/bigproject/now_with_bugs_fixed/32/FOO_BAR_2096.results")
y obtener
"/home/gumby/bigproject/now_with_bugs_fixed/32"
pero ahora me gustaría dividir esa cadena de directorios en los componentes individuales de la carpeta, es decir, algo así como
["home", "gumby", "bigproject", "now_with_bugs_fixed", "32"]
¿hay una manera de hacerlo que no sea usando
directory.split("/")[1:-1]
Tenga en cuenta que el archivo de Windows :: SEPARADOR es /, no \. Entonces, si solo usa ese método en el resultado de File.join, funcionará bien, pero si quiere trabajar con la entrada del usuario u otras fuentes que podrían usar \ como un separador de archivos, debería hacer algo como 'dir.split (Regexp.union (* [File :: SEPARATOR, File :: ALT_SEPARATOR] .compact)) '(o una versión más legible de eso) – sepp2k
Lamento el spam, pero esta solución es indiscutiblemente mejor: http://stackoverflow.com/a/ 21572944/924109 –