Você pode usar --files-from
para definir a lista de arquivos a serem sincronizados e usar find
para excluir links simbólicos:
rsync --files-from=<(find . ! -type l -print) . TARGET/
Desejo excluir links simbólicos de um rsync
, mas --no-links
inunda meu terminal com skipping non-regular file
para cada link, tirando o foco de outras informações importantes de rsync
.
Como posso excluir links sem ser importunado sobre cada ocorrência individual? Os seguintes não são soluções aceitáveis:
-q
, pois isso suprime a saída all de rsync
grep
Se isto é impossível (como pode parecer): Por que pular arquivos não-regulares considerados tão importantes que o usuário é explicitamente avisado sobre cada um deles, mesmo quando ele especificou que deseja excluí-los? Estou tentado a tomar isso como um problema com o desenvolvedor.
Você pode usar --files-from
para definir a lista de arquivos a serem sincronizados e usar find
para excluir links simbólicos:
rsync --files-from=<(find . ! -type l -print) . TARGET/
Se você não quiser ver mensagens sobre nenhum arquivos ignorados, você pode usar --info=skip0
se sua versão de rsync
não for muito antiga.
Se você não quiser ver as mensagens nos links simbólicos ignorados, mas fazer quiser as mensagens se algum outro arquivo for ignorado, então infelizmente as opções de controle de saída rsync
não parecem para ser bem granulado o suficiente para isso.
Veja rsync --info=help
para uma lista de coisas que você pode ajustar em rsync
output.
Tags rsync