rsync + chmod múltiples archivos

0

Tengo una carpeta de origen

source/

-rw-------@ 1 user  staff    41B Mar 23 13:59 aws-1
-rw-r--r--  1 user  staff   112B Mar 23 14:36 aws-2
-rw-rw-rw-@ 1 user  staff   2.3K Feb  5 17:15 google

la carpeta de destino no existe todavía. Y trato de rsync los archivos 2 aws en una carpeta de destino. Aquí está mi orden:

rsync \
  -avh --chmod=a=rw \
  --include="aws-*" \
  --exclude="*" \
  "source/." "destination/"

Lo que estoy tratando de hacer es sincronizar los archivos 2 aws y cambiar sus permisos una vez en la carpeta de destino. Después de ejecutar el comando, recibí un error y los archivos no están en la carpeta de destino. Sólo se crea la carpeta. Aquí está el error:

building file list ... done
created directory /Users/user/destination/aws
./
rsync: recv_generator: failed to stat "/Users/user/destination/aws/aws-1": Permission denied (13)
rsync: recv_generator: failed to stat "/Users/user/destination/aws/aws-2": Permission denied (13)
rsync: recv_generator: mkdir "/Users/user/destination/aws/." failed: Permission denied (13)
*** Skipping everything below this failed directory ***

Dice permiso denegado sin copiar los archivos. No entiendo ya qué permiso causa problema. Mi archivo fuente y mi directorio parecen estar bien. La carpeta de destino creada también parece estar bien.

PS: Preciso que mi comando rsync ocurre dentro de un script bash

    
pregunta eakl 23.03.2017 - 22:22

1 respuesta

1

El problema que tienes es casi seguro que se debe a que rsync intenta crear un directorio que ya existe.

Dado que su origen y destino están en la misma computadora, usar rsync es una exageración. En su lugar, intente

mkdir -p /Users/user/destination/aws ; cp source/aws-* /Users/user/destination/aws

Esto crea el directorio de destino si no existe y luego hace una copia.

    
respondido por el Tony Williams 23.03.2017 - 23:30

Lea otras preguntas en las etiquetas