Eu não sei de um único comando, mas o hack que eu criei é o seguinte.
-
Use
rsyncpara copiar odirOrigdeserver1paraserver2rsync -zarv --prune-empty-dirs --include "*/" \ --include="file1.txt" --exclude="*" "server1:dirOrig" \ "server2:dirOrig" -
Exclua os subdiretórios do
dirOrigcopiado que não estão presentes emdirDestusandocommcomm -23 <( cd server2:dirOrig && find -mindepth 1 -type d | sort ) \ <( cd server2:dirDest && find -mindepth 1 -type d | sort ) \ | ( cd server2:dirOrig && xargs rm -rf ) -
Por fim, rsync o
dirDestcomdirOrigcom base na soma de verificação e exclua todos os arquivos no dirOrig não presentes no dirDest, excetofile1.txtrsync -acv --exclude=file1.txt --delete \ server2:dirDest server2:dirOrig