Find and move files in sequence
Arguments
- sourceDir
character(1)
. Source directory of files to rename.- targetDir
character(1)
. Target directory of files to rename.- pattern
character(1)
orNULL
. File matching pattern. Refer tolist.files()
for details.
Examples
testDir <- AcidBase::tempdir2()
sourceDir <- file.path(testDir, "source")
targetDir <- file.path(testDir, "target")
paths <- c(sourceDir, targetDir)
invisible(lapply(X = paths, FUN = dir.create, recursive = TRUE))
invisible(file.create(
file.path(
sourceDir,
paste0(
c("aaa", "bbb", "ccc"),
".txt"
)
)
))
print(sort(list.files(
path = sourceDir,
full.names = FALSE,
recursive = FALSE
)))
#> [1] "aaa.txt" "bbb.txt" "ccc.txt"
out <- findAndMoveInSequence(
sourceDir = sourceDir,
targetDir = targetDir
)
#> → Renaming /private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/source/aaa.txt to /private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/target/1-aaa.txt.
#> → Renaming /private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/source/bbb.txt to /private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/target/2-bbb.txt.
#> → Renaming /private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/source/ccc.txt to /private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/target/3-ccc.txt.
#> ℹ Successfully renamed 3 files.
print(out)
#> [1] "/private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/target/1-aaa.txt"
#> [2] "/private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/target/2-bbb.txt"
#> [3] "/private/var/folders/l1/8y8sjzmn15v49jgrqglghcfr0000gn/T/Rtmp5QluiJ/m46nR98jXZ-169841035761483/target/3-ccc.txt"
print(sort(list.files(
path = targetDir,
full.names = FALSE,
recursive = FALSE
)))
#> [1] "1-aaa.txt" "2-bbb.txt" "3-ccc.txt"
AcidBase::unlink2(testDir)