2 个版本
0.1.1 | 2021年4月12日 |
---|---|
0.1.0 | 2021年4月10日 |
#17 在 #filenames
24KB
567 行
README
BackedUp
备份轮换命令行工具。
使用文件名提取时间戳,然后根据保留或删除将文件排序到时间槽中。
安装
cargo install backedup
可以从源代码构建本地克隆并使用以下命令安装
cargo install .
使用方法
默认情况下,将显示计划。除非提供 --execute
标志,否则不会发生删除。
给定目录的文件名被解析为时间表示。
至少需要 year
、month
和 day
才能考虑删除。必须为至少一个槽位提供要保留的文件数配置。
以下命令将显示保留以下内容的计划
- 每年一个文件,保留20年
- 每月一个文件,保留12个月
- 每天一个文件,保留30天
backedup -y 20 -m 12 -d 30 path/to/directory
文件仅根据时间分组到单独的槽中,文件名其余部分从不考虑。
使用 --pattern
或 -p
标志以仅接受特定的文件名模式。
例如: --pattern '*.log'
。
可以通过 --regex
提供解析文件名时间的替代正则表达式。默认的是
(?P<year>\d{4}) \D?
(?P<month>\d{2}) \D?
(?P<day>\d{2}) \D?
(
# Optional components.
(?P<hour>\d{2}) \D?
(?P<minute>\d{2}) \D?
(?P<second>\d{2})?
)?
查看 --help
获取更多详细信息,或查看 示例配置
日志记录
默认情况下,文件删除将记录到 Syslog
其他
正则表达式和总体灵感来自 python-rotate-backups
依赖关系
~6–15MB
~190K SLoC