Partager via


Utiliser AzCopy dans les scripts et les transferts planifiés

Vous pouvez incorporer AzCopy dans des scripts automatisés pour les opérations par lots, les transferts de données planifiés ou les pipelines d’intégration continue. Cet article explique comment obtenir des liens de téléchargement statiques pour garantir la cohérence des versions, créer des tâches planifiées pour les transferts de données automatisés et gérer des considérations spéciales telles que l’échappement de caractères et l’intégration Jenkins.

Au fil du temps, le lien de téléchargement AzCopy pointe vers de nouvelles versions d’AzCopy. Si votre script télécharge AzCopy, il se peut qu’il cesse de fonctionner si une version plus récente d’AzCopy modifie les fonctionnalités dont votre script dépend.

Pour éviter ces problèmes, obtenez un lien statique (immuable) vers la version actuelle d’AzCopy. De cette façon, votre script télécharge la même version exacte d’AzCopy à chaque fois qu’il s’exécute.

Pour obtenir un lien statique, ouvrez la page de publication d’AzCopy. Ensuite, faites défiler la page jusqu’à ce que vous localisiez la version souhaitée. Dans la liste des ressources de cette version, cliquez avec le bouton droit sur la ressource souhaitée. Dans le menu contextuel, sélectionnez Copier le lien. Vous pouvez ensuite utiliser cette URL dans votre script pour télécharger et extraire le fichier binaire AzCopy.

Note

Le lien statique vers les fichiers binaires AzCopy peut changer au fil du temps en raison de notre infrastructure de distribution de contenu. Si vous devez utiliser une version spécifique d’AzCopy pour une raison quelconque, envisagez d’utiliser AzCopy avec un système d’exploitation qui tire parti du package publié Linux. Cette méthode garantit que vous pouvez installer et gérer de manière fiable la version souhaitée d’AzCopy.

Créer une tâche planifiée

Vous pouvez créer une tâche planifiée ou un travail Cron qui exécute un script de commande AzCopy. Le script identifie et charge les nouvelles données locales dans le stockage cloud selon un intervalle de temps spécifique.

Les exemples suivants supposent que vous avez configuré l’authentification Microsoft Entra à l’aide de la variable d’environnement AZCOPY_AUTO_LOGIN_TYPE . Pour plus d’informations, consultez Autoriser avec l’ID Microsoft Entra.

Copiez la commande AzCopy suivante dans un éditeur de texte. Mettez à jour les valeurs de paramètre de la commande AzCopy avec les valeurs appropriées. Enregistrez le fichier sous le nom script.sh.

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

Vous pouvez créer un travail cron à l’aide de la commande Crontab . L’exemple suivant crée un travail cron et spécifie l’expression */5 * * * * cron qui indique que le script script.sh shell doit s’exécuter toutes les cinq minutes.

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

Vous pouvez planifier le script pour qu’il s’exécute à une heure précise tous les jours, tous les mois ou tous les ans. Pour en savoir plus sur la définition de la date et l’heure d’exécution d’un travail, consultez la page sur les expressions Cron.

Caractères spéciaux d’échappement dans les jetons SAS

Dans les fichiers par lots qui portent l’extension .cmd, vous devez placer dans une séquence d’échappement les caractères % qui apparaissent dans les jetons SAS. Ajoutez un caractère supplémentaire % en regard des caractères existants % dans la chaîne de jeton SAS. La séquence de caractères résultante apparaît sous la forme %%. Ajoutez un extra ^ avant chaque & caractère pour créer la séquence ^&de caractères.

Exécuter des scripts à l’aide de Jenkins

Si vous envisagez d’utiliser Jenkins pour exécuter des scripts, placez la commande suivante au début du script.

/usr/bin/keyctl new_session

Étapes suivantes

Si vous avez des questions, des problèmes ou des commentaires généraux, envoyez-les sur GitHub.