rubyfiledir

How to rename a file in Ruby?


Here's my .rb file:

puts "Renaming files..."

folder_path = "/home/papuccino1/Desktop/Test"
Dir.glob(folder_path + "/*").sort.each do |f|
    filename = File.basename(f, File.extname(f))
    File.rename(f, filename.capitalize + File.extname(f))
end

puts "Renaming complete."

The files are moved from their initial directory to where the .rb file is located. I'd like to rename the files on the spot, without moving them.

Any suggestions on what to do?


Solution

  • What about simply:

    File.rename(f, folder_path + "/" + filename.capitalize + File.extname(f))