Come posso spostare un file con Ruby?
Domanda
Voglio spostare un file con Ruby. Come posso farlo?
Soluzione
Puoi usare FileUtils per farlo.
#!/usr/bin/env ruby
require 'fileutils'
FileUtils.mv('/tmp/your_file', '/opt/new/location/your_file')
Ricordate; se ti sposti tra le partizioni, "quot" mv " copierà il file nella nuova destinazione e scollegherà il percorso di origine.
Altri suggerimenti
Una vecchia domanda, sono sorpreso che nessuno abbia risposto a questa semplice soluzione. Non hai bisogno di fileutils o di una chiamata di sistema, basta rinominare il file nella nuova posizione.
File.rename source_path, target_path
Happy coding
require "FileUtils"
FileUtils.move 'stuff.rb', '/notexist/lib/ruby'
Usa il modulo 'fileutils' e usa FileUtils.mv:
http: // www.ruby-doc.org/stdlib-2.0/libdoc/fileutils/rdoc/FileUtils.html#method-c-mv
ecco un modello.
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
puoi spostare il tuo file in questo modo
Rails.root.join ( 'foo', 'bar')
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow