回答:
これにはFileUtilsを使用できます。
#!/usr/bin/env ruby
require 'fileutils'
FileUtils.mv('/tmp/your_file', '/opt/new/location/your_file')
覚えておいてください。パーティション間を移動する場合、「mv」はファイルを新しい宛先にコピーし、ソースパスのリンクを解除します。
古い質問ですが、この単純な解決策に誰も答えていないことに驚いています。fileutilsやシステムコールは必要ありません。ファイルの名前を新しい場所に変更するだけです。
File.rename source_path, target_path
ハッピーコーディング
FileUtils.mv
。
require "FileUtils"
FileUtils.move 'stuff.rb', '/notexist/lib/ruby'
mv
愛するコンソールにいるような気分になります;)
move
を備えているmv
ので、どちらか一方を選択できることです。:)
require "fileutils"
(大文字なし)
モジュール「fileutils」を使用し、FileUtils.mvを使用します。
http://www.ruby-doc.org/stdlib-2.0/libdoc/fileutils/rdoc/FileUtils.html#method-c-mv
こちらがテンプレートです。
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
このようにファイルを移動できます
Rails.root.join( 'foo'、 'bar')