Estoy tratando de correr rsync -a --files-from=~/.rsync_file_list ~/destinationy me dice: rsync error: syntax or usage error (code 1) at options.c(1652) [client=3.0.7]. ¿Alguien puede aclararme lo que estoy haciendo mal?
El archivo ~/.rsync_file_listsolo contiene una lista de nombres de archivo precedidos ~/, separados por nuevas líneas (aunque también he intentado enumerarlos todos en la misma línea, con el mismo resultado).
Si corro rsync -a ~/file ~/file2 ~/file3 ~/destinationfunciona bien. Entonces, ¿qué me estoy perdiendo de la --files-fromopción?

sed "s#~/#/home/wolf/#g" -ie ~/.rsync_file_listRespuestas:
De acuerdo, encontré el problema.
--files-from=FILE, rsync requiere un directorio de origen en el que encontrar los archivos enumerados.Entonces el comando debería ser
rsync -a --files-from=~/.rsync_file_list $HOME/ /destination..rsync_file_listtiene que leer:fuente
../). Las barras inclinadas se ignorarán, por lo que las rutas absolutas no funcionan.El uso de "~" puede no funcionar dentro de un archivo "desde" a menos que rsync sea lo suficientemente inteligente como para reconocer y traducir el símbolo "~".
Cuando especifica un "~" como parte de un comando en la línea de comando de su shell, es el mismo shell el que convierte "~" en su directorio de inicio antes de pasar el argumento al programa. Entonces, aunque escriba
rsync -a ~/file, lo quersync"ve" es en realidad la ruta resuelta, orsync -a /home/foo/file.Ver Bash Tilde Expansion para más información.
fuente