Mantenha seus arquivos em sincronia usando um utilitário simples de linha de comando.

Os Macs há muito tempo são equipados com um utilitário de sincronização de arquivos desconhecido pela maioria dos usuários. A sincronização remota, ou rsync, é uma maneira de sincronizar arquivos e diretórios através da interface de linha de comando em máquinas baseadas em Unix. Este utilitário fácil de usar é comumente usado para fazer backup de seus dados, mas pode sincronizar arquivos para qualquer outra finalidade que você escolher usá-lo. A sincronização remota pode ser melhor do que outros métodos de backup devido à sua velocidade e porque não requer permissões especiais para executar um comando rsync. Com apenas um pequeno conhecimento da linha de comando, você pode fazer backup em pouco tempo com o rsync.
Nível de Dificuldade: Médio

O que você precisa:

>> Mac OS X
>> Arquivos para sincronizar
>> Algum conhecimento de linha de comando

1. Arquivo Simples e Sincronização de Diretórios

Uma das coisas mais simples que você pode fazer com o rsync é fazer backup de arquivos e estrutura de diretórios. Para usar o rsync, você deve usar o seguinte formato de comando ao especificar informações no Terminal:
rsync -options SourceDirectory DestinationDirectory
Existem muitas opções diferentes que farão com que o rsync realize operações diferentes durante o processo de sincronização de arquivos. O texto do SourceDirectory será substituído pelo caminho do diretório para os arquivos e diretórios que serão usados ​​durante o processo de sincronização do arquivo, e o texto DestinationDirectory será substituído pelo diretório para o qual os arquivos e diretórios de origem serão copiados..
Para começar a usar o rsync, abra o Terminal (localizado em / Aplicativos / Utilitários) e digite o seguinte comando:
rsync -r
Em seguida, abra uma janela do Finder e arraste e solte a pasta do local de origem (a pasta que contém os arquivos que você deseja fazer backup) na janela do Terminal. Você notará que a localização do diretório será inserida na janela do Terminal..

Seu comando rsync será parecido com isto quando você terminar de inserir todas as opções.

Finalmente, localize o local de destino no Finder (a pasta onde você deseja que os arquivos de origem sejam sincronizados) e arraste-o e solte-o na janela do Terminal. Esse local do diretório também será inserido na janela do Terminal, fazendo com que seu comando rsync seja parecido com isto:
rsync -r / Users / Cory / Documentos / Usuários / Cory / Desktop / Backup
Pressione enter na janela Terminal para que o conteúdo do diretório de origem seja copiado exatamente para o diretório de destino. Neste caso, nossa pasta Documentos será copiada para uma pasta de Backup em nosso Desktop.

2. Preservando Timestamps Durante a Sincronização

Quando você usa o rsync, os arquivos que são copiados terão uma data de modificação da mesma data em que o comando rsync foi executado. Para superar isso, há outra opção que você pode especificar no comando rsync que preservará os timestamps durante o processo de sincronização..

Sem preservar o registro de data e hora, os arquivos exibirão a data e hora de modificação como a hora em que o comando rsync foi executado.

Para fazer isso, use a opção -a em vez de -r, como usamos no comando acima. A opção -a usará o modo recursivo, preservará os links simbólicos, preservará as permissões de arquivo e diretório, preservará o registro de data e hora e preservará o proprietário e o grupo.
Para fazer isso, digite o seguinte comando e arraste e solte as pastas na ordem apropriada, como fizemos acima.
rsync -a SourceDirectory DestinationDirectory

3. Sincronize Apenas Um Arquivo

Você pode, ocasionalmente, apenas desejar sincronizar um arquivo em vez de um diretório inteiro e todos os arquivos contidos nele. Mais uma vez, o rsync pode atender a essa necessidade simplesmente removendo quaisquer opções e especificando um arquivo para a origem em vez de um diretório.

Depois de pressionar enter, o arquivo sincronizado aparecerá na sua área de trabalho.

Digamos que temos um arquivo de texto chamado “MyDocument.txt” Em nosso diretório Documentos que desejamos sincronizar com o meu Desktop, nós digitaríamos o seguinte comando no Terminal e pressionaríamos:
rsync /Users/Cory/Documents/MyDocument.txt

/ Users / Cory / Desktop
Observe que não colocamos nenhuma opção, como -a ou -r, porque não estamos usando os recursos que essas opções fornecem.

4. Sincronizar Apenas Diretórios

Se você está trabalhando em um projeto que requer que você replique a estrutura de diretórios, mas não os arquivos, o rsync também tem a capacidade de ajudá-lo aqui. Você só precisa usar a opção -dr:
rsync -dr SourceDirectory DestinationDirectory

Quando você pressiona a tecla Enter, os diretórios e subdiretórios no diretório de origem serão replicados na área de trabalho.

Então, se você fosse replicar a estrutura de diretório de uma pasta chamada “Minha pasta” na sua pasta Documents no seu Desktop, você poderia especificar o seguinte comando:
rsync -dr / Usuários / Cory / Documents / MyFolder

/ Users / Cory / Desktop

5. Visualizar o progresso do rsync durante a sincronização

Se você estiver usando o rsync com um grande grupo de arquivos, talvez deseje visualizar o progresso da sincronização de cada arquivo conforme ele acontece. Mais uma vez, outra opção está lá para ajudar. Colocar o rsync no modo detalhado fará com que o utilitário produza, linha por linha, o progresso da cópia de arquivos e diretórios. Basta usar a opção -v.

O modo detalhado mostrará exatamente em quais arquivos o rsync está trabalhando.

Para ver a saída do modo detalhado, você pode usar o seguinte comando:
rsync -v -r SourceDirectory DestinationDirectory