Eu quero mover um arquivo com Ruby. Como faço isso?
Eu quero mover um arquivo com Ruby. Como faço isso?
Respostas:
Você pode usar o FileUtils para fazer isso.
#!/usr/bin/env ruby
require 'fileutils'
FileUtils.mv('/tmp/your_file', '/opt/new/location/your_file')
Lembrar; se você estiver movendo entre partições, "mv" copiará o arquivo para o novo destino e desvinculará o caminho de origem.
Uma pergunta antiga, estou surpreso que ninguém respondeu a esta solução simples. Você não precisa de fileutils ou de uma chamada de sistema, apenas renomeie o arquivo para o novo local.
File.rename source_path, target_path
Feliz codificação
FileUtils.mv
.
require "FileUtils"
FileUtils.move 'stuff.rb', '/notexist/lib/ruby'
mv
faz-me sentir como estou em meu amado consola;)
move
e, mv
portanto, é possível escolher um deles. :)
require "fileutils"
(sem maiúsculas)
Use o módulo 'fileutils' e use FileUtils.mv:
http://www.ruby-doc.org/stdlib-2.0/libdoc/fileutils/rdoc/FileUtils.html#method-c-mv
aqui está um modelo
src_dir = "/full_path/to_some/ex_file.txt"
dst_dir = "/full_path/target_dir"
#Use the method below to do the moving
move_src_to_target_dir(src_dir, dst_dir)
def archive_src_to_dst_dir(src_dir, dst_dir)
if File.exist ? (src_dir)
puts "about to move this file: #{src_dir}"
FileUtils.mv(src_dir, dst_dir)
else
puts "can not find source file to move"
end
end
você pode mover seu arquivo assim
Rails.root.join ('foo', 'bar')