These function return information on the backups of a file (if any exist)
backup_info(file, dir = dirname(file)) list_backups(file, dir = dirname(file)) n_backups(file, dir = dirname(file)) newest_backup(file, dir = dirname(file)) oldest_backup(file, dir = dirname(file))
file |
|
---|---|
dir |
|
backup_info()
returns a data.frame
similar to the output of
file.info()
list_backups()
returns the paths to all backups of file
n_backups()
returns the number of backups of file
as an integer
scalar
newest_backup()
and oldest_backup()
return the paths to the
newest or oldest backup of file
(or an empty character
vector if none exist)
In rotor, an interval is a character string in the form
"<number> <interval>"
. The following intervals are possible:
"day(s)"
, "week(s)"
, "month(s)"
, "quarter(s)"
, "year(s)"
.
The plural "s"
is optional (so "2 weeks"
and "2 week"
are equivalent).
Please be aware that weeks are
ISOweeks
and start on Monday (not Sunday as in some countries).
Interval strings can be used as arguments when backing up or rotating files, or for pruning backup queues (i.e. limiting the number of backups of a single) file.
When rotating/backing up "1 months"
means "make a new backup if the last
backup is from the preceding month". E.g if the last backup of myfile
is from 2019-02-01
then backup_time(myfile, age = "1 month")
will only
create a backup if the current date is at least 2019-03-01
.
When pruning/limiting backup queues, "1 year"
means "keep at least most
one year worth of backups". So if you call
backup_time(myfile, max_backups = "1 year")
on 2019-03-01
, it will create
a backup and then remove all backups of myfile
before 2019-01-01
.
# setup example files tf <- tempfile("test", fileext = ".rds") saveRDS(cars, tf) backup(tf) backup(tf) backup_info(tf)#> path name sfx ext size isdir #> 1 /tmp/RtmpOlTNDu/test23636ab738cb.1.rds test23636ab738cb 1 rds 289 FALSE #> 2 /tmp/RtmpOlTNDu/test23636ab738cb.2.rds test23636ab738cb 2 rds 289 FALSE #> mode mtime ctime atime uid gid #> 1 666 2021-08-16 08:48:14 2021-08-16 08:48:14 2021-08-16 08:48:14 2000 2000 #> 2 666 2021-08-16 08:48:14 2021-08-16 08:48:14 2021-08-16 08:48:14 2000 2000 #> uname grname index #> 1 travis travis 1 #> 2 travis travis 2list_backups(tf)#> [1] "/tmp/RtmpOlTNDu/test23636ab738cb.1.rds" #> [2] "/tmp/RtmpOlTNDu/test23636ab738cb.2.rds"n_backups(tf)#> [1] 2newest_backup(tf)#> [1] "/tmp/RtmpOlTNDu/test23636ab738cb.1.rds"oldest_backup(tf)#> [1] "/tmp/RtmpOlTNDu/test23636ab738cb.2.rds"#> [1] 0#> [1] TRUE