Я пытаюсь скопировать папку, содержащую структуру подпапок, исключая указанную подпапку с помощью команды find -exec cp.Мне удалось использовать несколько рабочих опций исключения, когда я использую только команду find, но после добавления команды '-exec cp' исключающие термины перестают работать.
Представьте интересующий каталог, содержащий несколькофайлы и подпапки, с одной подпапкой с именем "exclusion_string"
Эта команда поиска работает правильно, если используется одна:
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 .
Чего мне здесь не хватает?