Pedindo que o rsync crie * qualquer * diretórios necessários

4

Eu tenho o seguinte loop no zsh:

 for x in my_folders*; 
 do 
   rsync -adrv $x/foo/bar/ /foo2/bar2/new_dir/$x/
 done

new_dir não existe antes de chamar rsync , e gostaria que rsync criasse, juntamente com todo o resto necessário para a operação de cópia.

Estou passando rsync as sinalizações d e r , mas ele reclama com:

rsync: mkdir "/foo2/bar2/new_dir/item1" failed: No such file or directory (2)

Aparentemente, supõe-se que as pastas /foo2/bar2/new_dir/$x/ existam antes da cópia, o que não acontece. Com isso:

  • Existe uma maneira de solicitar ao rsync que crie qualquer diretório necessário para que a operação de cópia funcione?
por Amelio Vazquez-Reina 19.11.2011 / 17:44

1 resposta

4

Olhando para a página rsync man, não vejo uma opção para o seu cenário. Mas o que dizer de adicionar o diretório manualmente antes de iniciar a sincronização, evitando assim o seu problema?

for x in my_folders*; 
do  
   mkdir -p /foo2/bar2/new_dir/$x
   rsync -adrv $x/foo/bar/ /foo2/bar2/new_dir/$x/
done
    
por 19.11.2011 / 18:43

Tags