Como mover recursivamente todas as pastas em um diretório para trás um diretório


15

Eu tenho pastas no cenário / terreno que contêm pastas chamadas terreno e objetos. Essas pastas possuem pastas com arquivos de dados. Como movo todo o conteúdo cenário / terreno / [nome] / terreno para cenário / terreno e o conteúdo de cenário / terreno / [nome] / objetos para cenário / objetos?

Respostas:


19

Não há opção recursiva para o mvcomando; portanto, se houver diretórios dentro dos diretórios que você deseja mover, será necessário usá-lo cp. Que tal este:

cp -R scenery/terrain/*/terrain/* scenery/terrain/
cp -R scenery/terrain/*/objects/* scenery/objects/

Então, quando você tiver certeza de que funcionou:

rm -rf scenery/terrain/*/terrain
rm -rf scenery/terrain/*/objects

Bom ponto, mas acho que no Mac OS será cp -R (R maiúsculo).
QSQ

@QSQ Obrigado pela correção. Corrigido agora.
Ryan

-r funcionou bem.
Andrew D.

1
mv scenery/terrain/*/terrain/* scenery/terrain/
mv scenery/terrain/*/objects/* scenery/objects/

Experimente-o em uma cópia da pasta no caso de eu mal entendido algo :-)
QSQ

Tarde demais agora .. Falha da minha parte. Eu sempre posso apenas re-torrent os 13 GB de cenário.
Andrew D.

Não funcionou. Diz que "o diretório não está vazio"
Andrew D.

Hmm estranho. Eu tentei aqui construindo uma árvore como essa e colocando arquivos em cenário / terreno / a / terreno / cenário / terreno / b / terreno / e cenário / terreno / a / objetos / e cenário / terreno / b / objetos /
QSQ

Talvez eu possa tentar mover o diretório atual / terreno em outro lugar para evitar conflitos de arquivo?
Andrew D.
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.