使用rsync仅复制隐藏文件

时间:2009-03-30 19:52:47

标签: macos rsync

我想使用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。

3 个答案:

答案 0 :(得分:11)

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

(如果你的文件只是“.a”怎么办?)

答案 1 :(得分:7)

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

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

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

答案 2 :(得分:0)

您是否尝试过像./.*?

这样的化身

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