Rsync exclui problemas

0

Eu tenho uma quantidade enorme de diretórios com uma estrutura de subpastas semelhante. Cada dir tem um subdir "s". Alguns dirs têm um prefixo "_tmp" no nome.

O que eu quero é copiar todos os dirs principais para um novo servidor, mas deixar os subdiretórios s e _tmp -dirst da transferência.

No OSX (rsync v. 2.6.9), este comando funciona bem:

rsync -avz --exclude */s/* --exclude *_tmp SOURCE/ DEST/

Mas no Ubuntu (rsync v. 3.0.7) o mesmo comando falha, _tmps estão fora, mas as pastas-s ainda estão dentro. Quaisquer soluções alternativas?

    
por Apeli 26.11.2017 / 22:57

1 resposta

2

Eu gostaria de pedir que você precisasse de seu comando com echo para ver o que você está executando.

echo rsync -avz --exclude */s/* --exclude *_tmp SOURCE/ DEST/

Dependendo do seu shell, das configurações do shell e do conteúdo do diretório atual, o *_tmp sem aspas pode ser expandido em um arquivo específico (que provavelmente não corresponderá à maioria dos que você deseja excluir). O echo deve mostrar o que realmente está acontecendo.

Você deve proteger os asteriscos com aspas para evitar a expansão do shell.

rsync -avz --exclude '*/s/*' --exclude '*_tmp' SOURCE/ DEST/

    
por 26.11.2017 / 23:31

Tags