Mover arquivos de subpastas para pasta pai no diretório maior

1

Estou tentando mover o conteúdo de uma subpasta para sua pasta pai e excluir a subpasta agora vazia. Eu quero que isso aconteça com várias pastas pai, cada uma com seu próprio nome de cliente exclusivo. Eu tirei uma captura de tela da hierarquia de pastas que pode ser visualizada aqui > > > link

Cada pasta CLIENT possui uma subpasta chamada '#msgs' com conteúdo que precisa ser movido para cima em uma pasta. Eu estava fazendo isso de maneira esquisita em 3 passos, escrito abaixo:

cd /Users/SystemFive/Desktop/ROOT/PARENT\ DIRECTORY/CLIENT\ 1
mv \#msgs/* .

então

find . -type d -name "#msgs" -exec rm -fvr "{}" \;

Isso é bastante complicado para o meu projeto, pois tenho mais de cem pastas de clientes para as quais preciso fazer isso. Eu estou procurando uma direção para criar algum tipo de instrução if / then que possa executar todo o DIRETÓRIO DE PAIS através de cada uma das pastas CLIENT e executar esta ação. Qualquer ajuda é apreciada. Obrigada!

    
por jshernandez8 11.10.2016 / 23:01

1 resposta

1

find . -iname '#msgs' | perl -pe 's/(.*)(#msgs)/mv "$1$2\/*" "$1";\nrm -r "$1$2";/g' | bash

omite o | bash para ver o que faria

    
por 12.10.2016 / 05:44