Creates a link to a file or a directory. This method tries to create a link to a file/directory on the file system, e.g. a symbolic link and Windows Shortcut links. It depends on operating and file system (and argument settings), which type of link is finally created, but all this is hidden internally so that links can be created the same way regardless of system.

# S3 method for default
createLink(link=".", target, skip=!overwrite, overwrite=FALSE,
  methods=getOption("createLink/args/methods", c("unix-symlink", "windows-ntfs-symlink",
  "windows-shortcut")), ...)

Arguments

link

The path or pathname of the link to be created. If "." (or NULL), it is inferred from the target argument, if possible.

target

The target file or directory to which the shortcut should point to.

skip

If TRUE and a file with the same name as argument link already exists, then the nothing is done.

overwrite

If TRUE, an existing link file is overwritten, otherwise not.

methods

A character vector specifying what methods (and in what order) should be tried for creating links.

...

Not used.

Value

Returns (invisibly) the path or pathname to the link. If no link was created, NULL is returned.

Required privileges on Windows

In order for method="unix-symlink" (utilizing file.symlink()), method="windows-ntfs-symlink" (utilizing executable mklink), and/or method="windows-shortcut" (utilizing createWindowsShortcut()) to succeed on Windows, the client/R session must run with sufficient privileges (it has been reported that Administrative rights are necessary).

Author

Henrik Bengtsson

References

Ben Garrett, Windows File Junctions, Symbolic Links and Hard Links, September 2009 [https://devtidbits.com/2009/09/07/windows-file-junctions-symbolic-links-and-hard-links/]