Se você não precisa pesquisar recursivamente, então uma simples expansão de suporte bash
cp -t /location/you/choose/ /path/to/A/{B,C,D}/*.deb
deve funcionar. Se você quiser procurar em todos subdiretórios de A recursivamente, então o modo mais portátil provavelmente seria
find /path/to/A -name '*.deb' -exec cp -t /location/you/choose/ {} +
Se o seu shell for compatível, você também pode usar a opção globstar
shell para tornar cp
recursiva sem usar find
- type shopt
ou help shopt
no prompt do shell para obter mais informações. Se você precisar excluir determinados subdiretórios, poderá adicionar um -prune
ao comando find.
Como sempre, é necessário pensar no que você deseja fazer no caso de nomes de arquivos não exclusivos: você pode adicionar um -n
ou --no-clobber
ao comando cp
ou usar a opção --backup=numbered
. No caso de arquivos deb, isso provavelmente não importa, já que (exceto na corrupção de arquivos) qualquer nome de arquivo não-exclusivo deve corresponder a arquivos duplicados exatos.