复制除一个以外的所有目录

时间:2014-04-25 14:18:08

标签: linux cp

我正在将所有子目录及其内容复制到我当前的目录,如下所示:

cp -r dirToCopy/* .

但是在dirToCopy文件夹中,有一个名为dirNotToCopy的子文件夹,不应复制。

如何从表达式中过滤掉该特定文件夹?

2 个答案:

答案 0 :(得分:1)

使用扩展的globbing:

shopt -s extglob
cp -r dirToCopy/!(dirNotToCopy) .

答案 1 :(得分:1)

如果您想在单行

中执行此操作
find /path_to/dirToCopy -mindepth 1 -type d  ! -name dirNotToCopy -exec cp -r {} . \; 

另外一种做法。