Copie o que é diferente em dir1 para dir2 Rsync. Sincronizar?

1

Eu quero copiar o que é diferente em dir 1 para dir 2 mantendo a estrutura, o que é diferente será o conteúdo de cada pasta /logs/ content, se for o mesmo então apenas sobrescreva, se não existir e copie.

Estou tentando com rsync , mas não funciona, apenas cria outro diretório chamado com origem no destino.

Algumas fotos (a estrutura, o conteúdo, os nomes das pastas, a ordem, são as mesmas, o que apenas muda são os arquivos de texto dentro de /logs/ dentro de cada pasta code-username).

[! [Todos os arquivos de nome de usuário com código em es51] [1]] [1]

Como você pode ver, rsync apenas cria a pasta de origem no destino, é como cp -r source destination , o que eu quero é sobrescrever os registros para que eu registre cada arquivo em cada pasta, mantendo a estrutura.

    
por Local Host 07.08.2018 / 13:05

1 resposta

1

Se você quiser rsync o conteúdo de um diretório e não o diretório de nível superior, você terá que finalizar seus argumentos de diretório para rsync com um / .

Exemplo:

 $ rsync /path/to/copy/ /path/to/put

Isso levará o conteúdo de /path/to/copy , mas não o diretório de nível superior copy , e sincronizará com /path/to/put . Você não precisa fazer isso, mas eu gosto dessa notação porque ela realmente comunica a intenção aos outros:

 $ rsync /path/to/copy/ /path/to/put/.

Isso diz para copiar o conteúdo de /path/to/copy e colocá-lo no diretório /path/to/put/. .

Então, no exemplo da captura de tela, você faria isso:

$ screen -dmS Rsync \
  rsync --archive --progress /media/pi/copias/Tribal/ /media/pi/servidor/.
    
por 07.08.2018 / 13:28