diff options
-rw-r--r-- | lib/fileutils.rb | 105 |
1 files changed, 101 insertions, 4 deletions
@@ -36,6 +36,7 @@ end # - ::ln, ::link: Creates hard links. # - ::ln_s, ::symlink: Creates symbolic links. # - ::ln_sf: Creates symbolic links, overwriting if necessary. # # === Deleting # @@ -690,6 +691,7 @@ module FileUtils # Keyword arguments: # # - <tt>force: true</tt> - overwrites +dest+ if it exists. # - <tt>noop: true</tt> - does not create links. # - <tt>verbose: true</tt> - prints an equivalent command: # @@ -709,7 +711,10 @@ module FileUtils # # Related: FileUtils.ln_sf. # - def ln_s(src, dest, force: nil, noop: nil, verbose: nil) fu_output_message "ln -s#{force ? 'f' : ''} #{[src,dest].flatten.join ' '}" if verbose return if noop fu_each_src_dest0(src, dest) do |s,d| @@ -729,6 +734,48 @@ module FileUtils end module_function :ln_sf # Creates {hard links}[https://en.wikipedia.org/wiki/Hard_link]; returns +nil+. # # Arguments +src+ and +dest+ @@ -2436,15 +2483,15 @@ module FileUtils end private_module_function :fu_each_src_dest - def fu_each_src_dest0(src, dest) #:nodoc: if tmp = Array.try_convert(src) tmp.each do |s| s = File.path(s) - yield s, File.join(dest, File.basename(s)) end else src = File.path(src) - if File.directory?(dest) yield src, File.join(dest, File.basename(src)) else yield src, File.path(dest) @@ -2468,6 +2515,56 @@ module FileUtils end private_module_function :fu_output_message # This hash table holds command options. OPT_TABLE = {} #:nodoc: (private_instance_methods & methods(false)).inject(OPT_TABLE) {|tbl, name| |