मैं रूबी के साथ एक फ़ाइल को स्थानांतरित करना चाहता हूं। मैं उसको कैसे करू?
मैं रूबी के साथ एक फ़ाइल को स्थानांतरित करना चाहता हूं। मैं उसको कैसे करू?
जवाबों:
आप ऐसा करने के लिए FileUtils का उपयोग कर सकते हैं।
#!/usr/bin/env ruby
require 'fileutils'
FileUtils.mv('/tmp/your_file', '/opt/new/location/your_file')
याद है; यदि आप विभाजनों में आगे बढ़ रहे हैं, "mv" फ़ाइल को नए गंतव्य पर कॉपी करेगा और स्रोत पथ को अनलिंक करेगा।
एक पुराना सवाल, मुझे आश्चर्य है कि किसी ने भी इस सरल समाधान का जवाब नहीं दिया। आपको फ़ाइल-फाइल या सिस्टमकॉल की आवश्यकता नहीं है, बस फ़ाइल को नए स्थान पर नाम दें।
File.rename source_path, target_path
खुश कोडिंग
FileUtils.mv
।
require "FileUtils"
FileUtils.move 'stuff.rb', '/notexist/lib/ruby'
mv
मुझे ऐसा लगता है कि मैं अपने प्रिय सांत्वना में हूं;)
move
और mv
इसलिए दोनों में से कोई एक चुन सकता है। :)
require "fileutils"
(कोई कैप नहीं)
मॉड्यूल 'फाइलटाइल' का प्रयोग करें और फाइल यूटिल्स का उपयोग करें।
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', 'बार')