Não, não há como destacar, diretamente da linha de comando do rsync, os arquivos de um usuário específico.
No entanto, é muito fácil gerar uma lista desses arquivos, por exemplo, com um comando como
find /src/directory -type f -exec ls -lh {} \; | awk '{if ($3 == "your_name") for (i=1; i<=NF-8; i++) $i = $(i+8); NF-=8; print}'
find
localiza todos os arquivos na árvore abaixo do diretório / src / e imprime uma lista longa que inclui o proprietário, depois passa essas listagens para awk
, que seleciona aqueles que pertencem a você ("seu_nome") e, somente para eles, imprime o caminho completo. A construção estranha iniciada com for
deve-se ao fato de que alguns dos nomes de arquivos podem incluir um espaço, portanto, essa construção imprime todos os tokens ( i.e.
todas as seqüências de caracteres delimitadas por espaço) da 9ª coluna (os nomes de arquivos podem incluir um número arbitrário de espaços). Além disso, essa construção garante que isso permaneça em uma única linha.
Você pode redirecionar essa saída para um arquivo e, em seguida, usar o rsync apenas nos arquivos listados neste arquivo.