O que está acontecendo aqui é que quando você usa a opção -R
para cp
e fornece um diretório como um argumento, ele copia tudo nesse diretório. Além disso, isso não preservará a estrutura de diretórios, pois todos os arquivos em diretórios inferiores serão copiados diretamente para /tmp/2
. Isso pode ser o que você quer (veja a resposta de X Tian para saber como fazê-lo dessa maneira), mas cuidado se houver os arquivos têm o mesmo nome, um sobrescreve o outro na detenção.
Para preservar a estrutura de diretórios, você pode usar cpio
:
find . -mtime -60 -print0 | cpio -0mdp /tmp/2
Se a opção -0
(ou equivalente) estiver indisponível, você pode fazer isso, mas tenha cuidado, nenhum dos seus nomes de arquivo contém uma nova linha:
find . -mtime -2 | cpio -mdp /tmp/2
cpio
também deve suportar a opção -L
, embora tenha cuidado com isso, pois, em alguns casos, pode causar um loop infinito.