我正在尝试复制包含子文件夹结构的文件夹,同时使用find -exec cp命令排除指定的子文件夹。当我单独使用find命令时,我设法使用了多个工作排除选项,但是一旦添加了'-exec cp'命令,排除项将不再起作用。
想象一下感兴趣的目录包含多个文件和子文件夹,其中一个子文件夹名为“ exclusion_string”
此find命令单独使用可正常工作:
find ~/directory/of/interest/ -maxdepth 2 ! -name "*exclusion_string*"
...,但此命令使排除标准无效:
find ~/directory/of/interest/ -maxdepth 2 ! -name "*exclusion_string*" -exec cp -r '{}' . \;
同样,当使用其他条件或参数时,子目录的排除也会丢失,例如:
find ~/directory/of/interest/ -maxdepth 2 -name "*" -size -100k -exec cp -r '{}' . \;
find ~/directory/of/interest/ -maxdepth 2 -name "*exclusion_string*" | xargs cp -rt .
我在这里想念什么?