Eu escreveria assim:
rsync -a root@somewhere:/folder/remote/*.{txt,jpg} .
Como escrevê-los em uma linha, também sem repetir o mesmo caminho?
rsync -a root@somewhere:/folder/remote/*.txt .
rsync -a root@somewhere:/folder/remote/*.jpg .
rsync -a --include='*.txt' --include='*.jpg' --exclude='*' root@somewhere:/folder/remote/ .
(Observe que o% final/
em /folder/remote/
e o posicionamento de --exclude='*'
após as regras de inclusão são importantes.) Em shells que suportam expansão de contraventamento (por exemplo, bash, ksh, zsh):
rsync -a --include='*.'{txt,jpg} --exclude='*' root@somewhere:/folder/remote/ .
Adicione --include='*/' --prune-empty-dirs
se quiser copiar arquivos em subdiretórios também.