Como posso sincronizar todos os PDFs de um diretório com o Dropbox?

5

Eu quero sincronizar todos os PDFs de um diretório (minha biblioteca Zotero) para o Dropbox. Por fim, quero ter uma lista de todos os PDFs, não os nomes dos diretórios.

Eu sincronizei com êxito todos os meus PDFs com o seguinte comando:

rsync -az --include="*/" --include="*.pdf" --exclude="*" \ 
--prune-empty-dirs /zotero /dropbox

Acho que posso configurar facilmente um trabalho cron para refazer essa tarefa todos os dias, mas ainda não tentei isso.

Mas agora a minha pasta no Dropbox ainda tem todos os diretórios com os PDFs (por exemplo, 6NVTACJH > xyz.pdf )

Meu problema: Eu adoraria ter apenas todos os pdfs listados em um diretório. Após um aconselhamento da Web , Tentei find todos os pdfs e criei um link físico.

Mas este comando ainda não funciona.

ln $( find -name="*.pdf" -type f - links 1 ) /dropbox

Você pode me ajudar com esse último comando?

    
por mcbetz 29.10.2012 / 12:37

1 resposta

1

Eu sugiro usar o find -exec ao invés de substituir o comando porque ele lida bem com nomes de arquivos.

Se você está tentando copiar todos os arquivos pdf em um único diretório / dropbox?

find /zotero -type f -name '*.pdf' -exec cp {} /dropbox/ \;

Se você quiser links:

find /zotero -type f -name '*.pdf' -exec ln {} /dropbox/ \;

Atualização:     Você pode usar o rsync em um único arquivo, basta substituir o cp / ln pelo rsync (isso será lento):

find /zotero -type f -name '*.pdf' -exec rsync -avz {} /dropbox/ \;

Outra opção é o tar, que também fornece atualização pela função de tempo de acesso.

Eu tenho que perguntar por que você precisa fazer isso, você usa o controle de versão limitada do Dropbox? Ou você está usando o Dropbox para compartilhar os arquivos on-the-fly?

Para aqueles que eu preciso de versionamento e atualização alfa eu pessoalmente tenho git ou bazaar repositório reside na pasta Dropbox, fazer commit no meu diretório local, em seguida, empurrar para a pasta Dropbox, simplesmente mais rápido do que qualquer hoster.

    
por 29.10.2012 / 15:22