web-dev-qa-db-ja.com

Rubyでファイルを移動するにはどうすればよいですか?

Rubyでファイルを移動したい。それ、どうやったら出来るの?

166
Željko Filipin

FileUtilsを使用してこれを行うことができます。

#!/usr/bin/env Ruby

require 'fileutils'

FileUtils.mv('/tmp/your_file', '/opt/new/location/your_file')

覚えておいてください。パーティション間を移動する場合、「mv」はファイルを新しい宛先にコピーし、ソースパスのリンクを解除します。

252
Berk D. Demir

古い質問ですが、この単純な解決策に誰も答えていないことに驚いています。 fileutilsやsystemcallは必要ありません。ファイルの名前を新しい場所に変更するだけです。

File.rename source_path, target_path

ハッピーコーディング

87
peter

FileUtils.move

require "FileUtils"
FileUtils.move 'stuff.rb', '/notexist/lib/Ruby'
16
Željko Filipin

モジュール「fileutils」を使用し、FileUtils.mvを使用します。

http://www.Ruby-doc.org/stdlib-2.0/libdoc/fileutils/rdoc/FileUtils.html#method-c-mv

11

ここにテンプレートがあります。

 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
1
zee