Utilice Automator para copiar una sola carpeta en varias ubicaciones

Tengo varias carpetas de proyectos de sitios web en una estructura como esta:

Client Work

|- Client 1
  |- client1site
    |- admin
      |- core

|- Client 2
  |- client2site
    |- admin
      |- core

|- Client 3
  |- client3site
    |- admin
      |- core

El diagrama de arriba solo muestra las carpetas clave, hay otras. También hay más de 3 clientes, pero la estructura es la misma para todos.

La carpeta principal es parte de un CMS y es idéntica en todos los sitios. Esto se actualiza periódicamente.

Me gustaría poder usar Automator para copiar una sola instancia de esta carpeta principal, almacenada en otro lugar de mi computadora (puede estar en cualquier lugar), y reemplazar todas las instancias de /admin/core en mi carpeta de trabajo del cliente.

es posible?

¡Gracias por cualquier ayuda!

Actualicé mi respuesta, no necesariamente necesita crear una variable para cada objetivo . Olvidé marcar la casilla de verificación [✓] Reemplazar archivos existentes en uno y no se completó correctamente y, aunque necesito usar una variable en su lugar, que en este caso de uso no era necesario. Lo siento por cualquier confusión. Dicho esto, el uso de una variable para cada uno ayuda a saber qué Cliente es el objetivo , mientras que simplemente seleccionando el objetivo plegado, todos se ven iguales.
Solo un pensamiento. ¿No sería más simple y más fácil usar alias o algo en cada carpeta de cliente para apuntar a una copia externa de la carpeta admin/core, ya que parece querer que sea idéntica en todos los clientes?

Respuestas (1)

Sí, esto se puede hacer en Automator .

Cree un nuevo flujo de trabajo y agregue una acción Obtener elementos del buscador especificados para agregarle la carpeta de la plantilla principal .

Agregue una acción Copiar elementos del buscador , una para cada uno de los sitios del cliente .

Para cada acción Copiar elementos del buscador , haga lo siguiente

  • Marque la casilla de verificación [✓] Reemplazar archivos existentes .
  • En el cuadro de lista Para: , seleccione: Otro…
    • En el cuadro de diálogo Elegir :
      • Navegue a la carpeta de administración del Cliente apropiado (número) .
      • Haga clic en el botón Elegir .

Una vez hecho esto para cada Cliente, el flujo de trabajo copiará la carpeta de la plantilla central en la carpeta de administración de cada carpeta del Cliente , reemplazándola y ahora con el contenido de la carpeta de la plantilla central actualizada en cada una de las carpetas del Cliente en la ubicación designada.


Si desea poder saber, más fácilmente, para qué Cliente es la acción Copiar elementos del buscador , haga lo siguiente:

  • Marque la casilla de verificación [✓] Reemplazar archivos existentes .
    • En el cuadro de lista Para:, seleccione: Nueva variable…
    • En el cuadro de diálogo Opciones de variables :
      • Cambie el texto de Nombre: a un designador apropiado, por ejemplo: PathToClient1
      • En el cuadro de lista Ruta , elija Otro… , luego navegue a la carpeta de administración del Cliente apropiado (número) .
      • Luego haga clic en el botón Elegir .

Al crear un nombre de variable para cada carpeta de Cliente, no hay ambigüedad sobre qué acción Copiar elementos del buscador es para qué carpeta de Cliente . Aunque esto supone que selecciona la carpeta de destino adecuada para cada uno. ;)


Estructura de carpetas antes del flujo de trabajo de Automator :

Estructura de carpetas antes del flujo de trabajo de Automator

Flujo de trabajo del automatizador :

Flujo de trabajo del automatizador

Estructura de carpetas después del flujo de trabajo de Automator :

Estructura de carpetas después del flujo de trabajo de Automator

Estructura de carpetas después de actualizar la carpeta de la plantilla principal y volver a ejecutar el flujo de trabajo de Automator :

Estructura de carpetas después del flujo de trabajo de Automator