D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
alt
/
ruby34
/
share
/
ri
/
system
/
FileUtils
/
Filename :
cp_r-i.ri
back
Copy
U:RDoc::AnyMethod[iI" cp_r:ETI"FileUtils#cp_r;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"Recursively copies files.;To:RDoc::Markup::BlankLine o; ; [I":Arguments +src+ (a single path or an array of paths) ;TI" and +dest+ (a single path) ;TI"Kshould be {interpretable as paths}[rdoc-ref:FileUtils@Path+Arguments].;T@o; ; [I":The mode, owner, and group are retained in the copy; ;TI"4to change those, use FileUtils.install instead.;T@o; ; [I"OIf +src+ is the path to a file and +dest+ is not the path to a directory, ;TI"copies +src+ to +dest+:;T@o:RDoc::Markup::Verbatim; [ I"!FileUtils.touch('src0.txt') ;TI")File.exist?('dest0.txt') # => false ;TI"-FileUtils.cp_r('src0.txt', 'dest0.txt') ;TI"(File.file?('dest0.txt') # => true ;T:@format0o; ; [I"KIf +src+ is the path to a file and +dest+ is the path to a directory, ;TI"'copies +src+ to <tt>dest/src</tt>:;T@o;; [ I"!FileUtils.touch('src1.txt') ;TI"FileUtils.mkdir('dest1') ;TI")FileUtils.cp_r('src1.txt', 'dest1') ;TI",File.file?('dest1/src1.txt') # => true ;T; 0o; ; [I"DIf +src+ is the path to a directory and +dest+ does not exist, ;TI"(recursively copies +src+ to +dest+:;T@o;; [I"tree('src2') ;TI"# => src2 ;TI"# |-- dir0 ;TI"# | |-- src0.txt ;TI"# | `-- src1.txt ;TI"# `-- dir1 ;TI"# |-- src2.txt ;TI"# `-- src3.txt ;TI"*FileUtils.exist?('dest2') # => false ;TI"%FileUtils.cp_r('src2', 'dest2') ;TI"tree('dest2') ;TI"# => dest2 ;TI"# |-- dir0 ;TI"# | |-- src0.txt ;TI"# | `-- src1.txt ;TI"# `-- dir1 ;TI"# |-- src2.txt ;TI"# `-- src3.txt ;T; 0o; ; [I"3If +src+ and +dest+ are paths to directories, ;TI"3recursively copies +src+ to <tt>dest/src</tt>:;T@o;; [I"tree('src3') ;TI"# => src3 ;TI"# |-- dir0 ;TI"# | |-- src0.txt ;TI"# | `-- src1.txt ;TI"# `-- dir1 ;TI"# |-- src2.txt ;TI"# `-- src3.txt ;TI"FileUtils.mkdir('dest3') ;TI"%FileUtils.cp_r('src3', 'dest3') ;TI"tree('dest3') ;TI"# => dest3 ;TI"# `-- src3 ;TI"# |-- dir0 ;TI"# | |-- src0.txt ;TI"# | `-- src1.txt ;TI"# `-- dir1 ;TI"# |-- src2.txt ;TI"# `-- src3.txt ;T; 0o; ; [I">If +src+ is an array of paths and +dest+ is a directory, ;TI";recursively copies from each path in +src+ to +dest+; ;TI">the paths in +src+ may point to files and/or directories.;T@o; ; [I"Keyword arguments:;T@o:RDoc::Markup::List: @type:BULLET:@items[ o:RDoc::Markup::ListItem:@label0; [o; ; [I"E<tt>dereference_root: false</tt> - if +src+ is a symbolic link, ;TI"does not dereference it.;To;;0; [o; ; [I"/<tt>noop: true</tt> - does not copy files.;To;;0; [o; ; [I"4<tt>preserve: true</tt> - preserves file times.;To;;0; [o; ; [I"M<tt>remove_destination: true</tt> - removes +dest+ before copying files.;To;;0; [o; ; [I";<tt>verbose: true</tt> - prints an equivalent command:;T@o;; [ I"HFileUtils.cp_r('src0.txt', 'dest0.txt', noop: true, verbose: true) ;TI"DFileUtils.cp_r('src1.txt', 'dest1', noop: true, verbose: true) ;TI"@FileUtils.cp_r('src2', 'dest2', noop: true, verbose: true) ;TI"@FileUtils.cp_r('src3', 'dest3', noop: true, verbose: true) ;T; 0o; ; [I"Output:;T@o;; [ I"cp -r src0.txt dest0.txt ;TI"cp -r src1.txt dest1 ;TI"cp -r src2 dest2 ;TI"cp -r src3 dest3 ;T; 0o; ; [I"=Raises an exception of +src+ is the path to a directory ;TI"&and +dest+ is the path to a file.;T@o; ; [I"@Related: {methods for copying}[rdoc-ref:FileUtils@Copying].;T: @fileI"lib/fileutils.rb;T:0@omit_headings_from_table_of_contents_below000[ I"i(src, dest, preserve: nil, noop: nil, verbose: nil, dereference_root: true, remove_destination: nil);T@�FI"FileUtils;TcRDoc::NormalModule00