Moving files between folders
Solution 1:
If you wanted a file.rename()
-like function that would also create any directories needed to carry out the rename, you could try something like this:
my.file.rename <- function(from, to) {
todir <- dirname(to)
if (!isTRUE(file.info(todir)$isdir)) dir.create(todir, recursive=TRUE)
file.rename(from = from, to = to)
}
my.file.rename(from = "C:/Users/msc2/Desktop/rabata.txt",
to = "C:/Users/msc2/Desktop/Halwa/BADMASHI/SCOP/rabata.txt")
Solution 2:
Please just be aware that file.rename
will actually delete the file from the "from" folder. If you want to just make a duplicate copy and leave the original in its place, use file.copy
instead.
Solution 3:
Use file.copy()
or fs::file_copy()
file.copy(from = "path_to_original_file",
to = "path_to_move_to")
Then you can remove the original file with file.remove()
:
file.remove("path_to_original_file")
Update 2021-10-08: you can also use fs::file_copy()
. I like {fs}
for consistent file and directory management from within R.
Solution 4:
You can try the filesstrings
library. This option will move the file into a directory. Example code:
First, we create a sample directory and file:
dir.create("My_directory")
file.create("My_file.txt")
Second, we can move My_file.txt
into the created directory My_directory
:
file.move("My_file.txt", "My_directory")