leer - Copiando un archivo de un directorio a otro con Ruby
leer archivos en ruby (2)
Algo como esto debería funcionar.
my_dir = Dir["C:/Documents and Settings/user/Desktop/originalfiles/*.doc"]
my_dir.each do |filename|
name = File.basename(''filename'', ''.doc'')[0,4]
dest_folder = "C:/Documents and Settings/user/Desktop/destinationfolder/#{name}/"
FileUtils.cp(filename, dest_folder)
end
Debe especificar la carpeta de destino, no creo que pueda usar comodines.
Hola, estoy tratando de mover varios archivos de una carpeta a otra. En la línea de FileUtils estoy intentando buscar en todas las carpetas de 4 caracteres en la carpeta de destino y luego pegar el archivo en la carpeta con el mismo nombre base que el archivo.
#!/usr/bin/env ruby
require ''fileutils''
my_dir = Dir["C:/Documents and Settings/user/Desktop/originalfiles/*.doc"]
my_dir.each do |filename|
FileUtils.cp(filename, "C:/Documents and Settings/user/Desktop/destinationfolder/****/" + File.basename(filename, ".doc"))
end
*
es un comodín que significa "cualquier número de caracteres", por lo que " ****
" significa "cualquier número de cualquier número de cualquier número de cualquier número de caracteres", que probablemente no sea lo que quieres decir.
?
es el símbolo adecuado para "cualquier carácter en esta posición", por lo que " ????
" significa "solo una cadena de cuatro caracteres".