Quero sincronizar os seguintes locais usando o uníssono:
- / home / user / Audiolivros com / compartilhados / Audiolivros
- / home / user / Música com / shared / Música
- / home / user / Podcasts com / compartilhado / Podcasts
Quais seriam os parâmetros da linha de comando uníssono? Com base nisso, posso adivinhar
Se uma ou mais preferências de caminho forem fornecidas, o Unison sincronizará apenas esses caminhos e seus filhos. (Isso é útil para fazer uma sincronização rápida de apenas um diretório, por exemplo.) Observe que as preferências de caminho são interpretadas literalmente - elas não são expressões regulares.
Aqui está o meu palpite. Isso está correto?
unison -ui text /home/user /nocrypt/Shared -path Audiobooks -path Music -path Podcasts
Eu também poderia usar um perfil. Li os documentos da ajuda e encontrei o exemplo que adaptei. Não tenho certeza se está correto, no entanto.
Modificado nos documentos da ajuda: Aqui está um perfil mais sofisticado, ilustrando alguns outros recursos úteis.
# Roots of the synchronization
root = /home/user
root = /shared
# Paths to synchronize
path = Audiobooks
path = Music
path = Podcasts
Isso está correto?
Quando terminei de escrever esta pergunta, eu já a tinha descoberto. Eu acho que os dois métodos acima estão corretos. O melhor do uníssono é que você pode executar uma "execução a seco" da mesma maneira que faria uma sincronização real. A ação padrão é sempre "sem ação" (depois que todas as alterações são apresentadas). Vou testá-lo agora e ver se funciona. Acho que não preciso de uma resposta, mas deixarei esta pergunta aqui para referência (e responda a mim mesma com uma confirmação de se isso funcionou ou não).
Como sua pergunta, estou postando isso para referência.
Você pode misturar e combinar variáveis. Se você deseja usar variáveis de shell , por exemplo, começa com um perfil como de costume, mas passa os argumentos que contêm variáveis de shell enquanto invoca o comando - o motivo é que você não pode usá-las normalmente em um arquivo de perfil.
root = $HOME
parece funcionar, mas emroot = ssh://host//$HOME
,$HOME
não é reconhecido como uma variável.Exemplo
documents.prf
:O comando que você poderia usar seria mais ou menos assim:
fonte
Você pode usá-lo como esse diretório raiz é raiz e pode definir todos os caminhos que você deseja.
fonte