rsync ler '--files-from' do array bash em vez do arquivo

2

É possível fazer com que o rsync leia uma lista de arquivos para incluir a partir de uma matriz no script ativo em vez de um arquivo acompanhante?

## declare an array variable
declare -a files=("path" "path" "path")

rsync --files-from=${files[@]} source destination

Existe uma maneira melhor de fazer isso? Eu gostaria de ter apenas um arquivo de script para gerenciar.

    
por sansSpoon 22.09.2017 / 03:35

1 resposta

3

Você pode executar:

'rsync --files-from=<( printf "%s\n" "${files[@]}" ) source destination
  • <() abre um canal e preenche-o com o conteúdo do comando interno. Retorna um descritor de arquivo

  • printf "%s\n" "${files[@]}" ecoa cada nome de arquivo em uma linha diferente

por 22.09.2017 / 13:50

Tags