2013-04-04 15 views

risposta

41

direttamente dalla pagina rsync man:

The syntax for requesting multiple files from a remote host is done 
by specifying additional remote-host args in the same style as the 
first, or with the hostname omitted. For instance, all these work: 

    rsync -av host:file1 :file2 host:file{3,4} /dest/ 
    rsync -av host::modname/file{1,2} host::modname/file3 /dest/ 
    rsync -av host::modname/file1 ::modname/file{3,4} 

Questo significa che il vostro esempio dovrebbe avere uno spazio aggiunto prima del secondo percorso:

rsync -e ssh [email protected]:/path/to/file :/path/to/second/file/ /local/directory/ 

Io suggerirei di provare prima con il -n oppure l'opzione --dry-run, in modo da vedere cosa verrà fatto prima che la copia (e le eventuali eliminazioni) vengano effettivamente eseguite.

+0

Non ci ho pensato quando ho fatto la mia domanda, ma la pista asciutta ha funzionato. Ora, se dovessi specificare da più directory sulla mia fonte, dovrei specificare più directory di destinazione come le stesse? O c'è un modo per copiare l'intera cartella e il suo contenuto nella destinazione? Quando ho eseguito il comando rsync la prima volta, ho appena copiato il contenuto del file. Nella pagina man dice qualcosa su --dirs o using -r. O sarebbe importante se lasciassi la/alla fine del nome del file sorgente? – Pred

+0

Se si desidera copiare le directory, è sufficiente fornire il percorso a una directory come origine. Se stai usando '-r' (o' -a' come nell'esempio della pagina man), copierai l'intera directory sorgente nella tua destinazione, preservando la struttura di questa directory. – Tonin

+20

Per i posteri: questo a quanto pare non è vero per le vecchie versioni di rsync, come il 2.6.9 rsync che sembra venire con OSX 10.9; quella versione vuole che tu faccia 'rsync -av host: 'file1 file2'', che diventa scomodo quando i nomi dei file contengono anche degli spazi. (Per fortuna, l'homebrew ha una versione più recente.) – Dougal

2

solo un esempio reale di @tonin. Scarica directory specifiche dal server live

rsync -av [email protected]:/var/www/html/cls \ 
:/var/www/html/index.php \ 
:/var/www/html/header.inc \ 
:/var/www/html/version.inc.php \ 
:/var/www/html/style.css \ 
:/var/www/html/accounts \ 
:/var/www/html/admin \ 
:/var/www/html/api \ 
:/var/www/html/config \ 
:/var/www/html/main \ 
:/var/www/html/reports . 
Problemi correlati