Compartir a través de


Uso de AzCopy en scripts y transferencias programadas

Puede incorporar AzCopy en scripts automatizados para operaciones por lotes, transferencias de datos programadas o canalizaciones de integración continua. En este artículo se muestra cómo obtener vínculos de descarga estáticos para garantizar la coherencia de la versión, crear tareas programadas para transferencias de datos automatizadas y controlar consideraciones especiales como el escape de caracteres y la integración de Jenkins.

Con el tiempo, el vínculo de descarga de AzCopy apunta a las nuevas versiones de AzCopy. Si el script descarga AzCopy, puede que deje de funcionar si una versión más reciente de AzCopy modifica las características de las que depende.

Para evitar estos problemas, obtenga un vínculo estático (sin cambiar) a la versión actual de AzCopy. De este modo, el script descarga exactamente la misma versión de AzCopy cada vez que se ejecuta.

Para obtener un vínculo estático, abra la página de versión de AzCopy. A continuación, desplácese por la página hasta que busque la versión deseada. En la lista de recursos de esa versión, haga clic con el botón derecho en el recurso deseado. En el menú contextual, seleccione Copiar vínculo. Después, puede usar esa dirección URL en el script para descargar y extraer el archivo binario de AzCopy.

Nota:

El vínculo estático a los archivos binarios de AzCopy puede cambiar con el tiempo debido a nuestra infraestructura de entrega de contenido. Si debe usar una versión específica de AzCopy por cualquier motivo, considere la posibilidad de usar AzCopy con un sistema operativo que aproveche el paquete publicado de Linux. Este método garantiza que puede instalar y mantener de forma confiable la versión deseada de AzCopy.

Creación de una tarea programada

Puede crear una tarea programada o un trabajo cron que ejecute un script de AzCopy. El script identifica y carga los datos locales nuevos en el almacenamiento en la nube en un intervalo de tiempo específico.

En los ejemplos siguientes se supone que configuró la autenticación de Microsoft Entra mediante la AZCOPY_AUTO_LOGIN_TYPE variable de entorno. Para obtener más información, consulte Autorizar con el identificador de Entra de Microsoft.

Copie el siguiente comando de AzCopy en un editor de texto. Actualice los valores de parámetro del comando de AzCopy con los valores adecuados. Guarde el archivo como script.sh.

azcopy sync "/mnt/myfiles" "https://mystorageaccount.blob.core.windows.net/mycontainer" --recursive=true

Puede crear un trabajo cron mediante el comando Crontab . En el ejemplo siguiente se crea un trabajo cron y se especifica la expresión */5 * * * * cron que indica que el script script.sh de shell se debe ejecutar cada cinco minutos.

crontab -e
*/5 * * * * sh /path/to/script.sh

Puede programar que el script se ejecute en un momento determinado todos los días, meses o años. Para más información sobre cómo establecer la fecha y la hora de ejecución de un trabajo, consulte las expresiones cron.

Escape de caracteres especiales en tokens de SAS

En los archivos por lotes que tienen la extensión .cmd, deben escaparse los caracteres % que aparecen en los tokens de SAS. Agregue un carácter adicional % junto a los caracteres existentes % en la cadena de token de SAS. La secuencia de caracteres resultante aparece como %%. Agregue un adicional ^ antes de cada & carácter para crear la secuencia ^&de caracteres .

Ejecutar scripts mediante Jenkins

Si tiene previsto usar Jenkins para ejecutar scripts, coloque el siguiente comando al principio del script.

/usr/bin/keyctl new_session

Pasos siguientes

Si tiene preguntas, problemas o comentarios generales, envíelas en GitHub.