小编ale*_*ich的帖子

如何使用 linux date 命令解析 ISO8601 日期

I'm trying to use the date command to generate a file timestamp that the date command itself can interpret. However, the date command does not seem to like its own output, and I am not sure how to work around this. Case in point:

sh-4.2$ date
Fri Jan  3 14:22:19 PST 2014
sh-4.2$ date +%Y%m%dT%H%M
20140103T1422
sh-4.2$ date -d "20140103T1422"
Thu Jan  2 23:22:00 PST 2014
Run Code Online (Sandbox Code Playgroud)

date appears to be interpreting the string with an offset of 15 hours. Are …

shell-script date

16
推荐指数
3
解决办法
3万
查看次数

rsync --delete 不删除所有已删除的文件

我正在使用 rsync 将多个系统备份到外部硬盘驱动器或通过网络备份到另一台机器。想法是维护原始文件系统的副本,其中包含一些内容,例如 /dev、/proc、/mnt 以及未排除的内容,然后在目标(即使用 btrfs 或 zfs)进行快照。为此,我使用了一个命令

rsync -avP --delete --exclude /dev/* --exclude /proc/* --exclude /mnt/* etc. etc. / backup@fileserver:/mnt/array/backup/machine/
Run Code Online (Sandbox Code Playgroud)

哪个工作得相当好。但是,我只是注意到 rsync 不能可靠地删除目标上的内容。因此,目标上的文件比源上任何时候都多得多,在一种情况下,备份比源大 100 GB。剩余的文件似乎大多是各种软件和库的旧版本。比如在原机上,/usr/include/qt/QtWidgets/包含

5.9.2
QAbstractButton
qabstractbutton.h
....
Run Code Online (Sandbox Code Playgroud)

但是在备份目标上,同一文件夹包含:

5.6.0
5.6.1
5.7.0
5.7.1
5.8.0
5.9.0
5.9.1
5.9.2
QAbstractButton
qabstractbutton.h
Run Code Online (Sandbox Code Playgroud)

rsync 似乎可以很好地复制新文件,但忘记删除所有旧文件。奇怪的是,有些文件实际上被删除了(rsync 在同步时总是报告删除了很多文件),但似乎实际上并没有删除许多文件。结果,我的备份占用了比应有的更多空间,并且无法直接恢复它们,因为由于所有额外的文件,它们可能占用比原始分区更多的空间,以及诸如平面之类的东西文件包数据库都搞砸了,包含许多旧版本包的重复条目。

关于这里可能发生什么的任何想法?我需要传递给 rsync 的其他标志,以便它实际上删除它应该删除的所有内容吗?

rsync

7
推荐指数
1
解决办法
5510
查看次数

标签 统计

date ×1

rsync ×1

shell-script ×1