10

我想使用 rsync 备份我的 homedir 中的所有隐藏文件和目录,而不是非隐藏文件和目录。

例如,给定这个目录列表:

drwxr-xr-x   7 sophie  sophie  238 31 Mar 08:45 .
drwxr-xr-x  15 sophie  sophie  510 31 Mar 08:14 ..
-rw-r--r--   1 sophie  sophie    4 31 Mar 08:12 .foo
drwxr-xr-x   3 sophie  sophie  102 31 Mar 08:45 .hiddendir
drwxr-xr-x   4 sophie  sophie  136 31 Mar 08:13 VisibleDirectory
-rw-r--r--   1 sophie  sophie    9 31 Mar 08:13 VisibleFile

我想备份 .foo、.hiddendir 和 .hiddendir 的所有内容,无论它们是否隐藏。我不想备份 VisibleDirectory 或 VisibleFile。

我想出的所有咒语都备份了“。”,因此它的所有内容包括 VisibleFile 和 VisibleDirectory,我不知道如何排除它。请帮忙!

我正在使用 Mac OS X 10.5.6 (Leopard) 和 rsync 版本 2.6.9 协议版本 29。

4

3 回答 3

12

它通常是“.??*”以确保您不复制“。” 和 ”..”

(如果你有一个只是 ".a" 的文件呢?)

于 2009-03-30T20:04:39.970 回答
12

匹配隐藏项目的常见模式是.[^.]*

rsync -a ~/.[^.]* /path/to/backup

这会复制以单个点开头的所有文件。请注意,它不包括以多个点开头的文件。

于 2009-03-30T21:17:15.363 回答
0

你试过像./.*这样的化身吗?

您能否将隐藏文件复制到临时目录,备份临时目录,然后将其删除?

于 2009-03-30T19:58:45.660 回答