End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
FileUtils#ln_s
FileUtils.ln_s(target, link, force: nil, noop: nil, verbose: nil)
FileUtils.ln_s(target, dir, force: nil, noop: nil, verbose: nil)
FileUtils.ln_s(targets, dir, force: nil, noop: nil, verbose: nil)
lib/fileutils.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.0.5/lib/fileutils.rb, line 372
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|
remove_file d, true if force
File.symlink s, d
end
end
In the first form, creates a symbolic link link which points to target. If link already exists, raises Errno::EEXIST. But if the force option is set, overwrites link.
Example
FileUtils.ln_s '/usr/bin/ruby', '/usr/local/bin/ruby' FileUtils.ln_s 'verylongsourcefilename.c', 'c', force: true
In the second form, creates a link dir/target pointing to target. In the third form, creates several symbolic links in the directory dir, pointing to each item in targets. If dir is not a directory, raises Errno::ENOTDIR.
Example
FileUtils.ln_s Dir.glob('/bin/*.rb'), '/home/foo/bin'