Pour télécharger des ressources telles que des fichiers, des images ou des vidéos depuis OSS vers votre machine locale, utilisez la commande cp dans ossutil.
Notes
Pour télécharger des fichiers, vous devez disposer des autorisations
oss:GetObjectetoss:ListObjects. Pour plus d'informations, consultez la rubrique Accorder des politiques d'autorisation personnalisées aux utilisateurs RAM.Lorsque vous utilisez l'option
-u, --update, le système envoie au moins une requête HEAD pour chaque fichier afin de comparer les horodatages, que le fichier cible existe ou non. Dans les scénarios où les données changent rarement, cela génère de nombreuses requêtes inefficaces, ce qui peut dégrader les performances et entraîner des frais de requête supplémentaires. Évaluez vos besoins métier réels avant d'utiliser cette option afin d'éviter toute consommation inutile de ressources.
Syntaxe de la commande
ossutil cp oss://bucket[/prefix] local-path [flags]
|
Paramètre |
Type |
Description |
|
local-path |
string |
Prend en charge les chemins relatifs, les chemins absolus et |
|
prefix |
string |
Préfixe d'objet. Si le préfixe se termine par « / », seules les opérations par lot sont prises en charge. S'il ne se termine pas par « / », la commande détermine s'il faut effectuer un téléchargement d'objet unique ou par lot en fonction des options de ligne de commande. |
|
--acl |
string |
Autorisations d'accès pour l'objet. Valeurs valides :
|
|
--bandwidth-limit |
SizeSuffix |
Limite la bande passante réseau pour contrôler le taux de transfert de données. La valeur minimale est de 1 024 o/s. L'unité par défaut est o/s. Vous pouvez spécifier une unité pour la valeur de bande passante. Les unités prises en charge incluent B (octets), K (kilo-octets), M (méga-octets) et G (giga-octets). Par exemple, 50 M définit la limite à 50 Mo/s. |
|
--bigfile-threshold |
SizeSuffix |
Seuil pour activer le chargement, le téléchargement ou la copie multipart pour les fichiers volumineux (par défaut : 104 857 600). |
|
--cache-control |
string |
Spécifie le comportement de mise en cache lorsque l'objet est téléchargé par un navigateur web. |
|
--checkers |
int |
Nombre de vérificateurs simultanés (par défaut : 16). |
|
--checkpoint-dir |
string |
Répertoire de stockage des informations de point de contrôle pour le téléchargement avec reprise (par défaut : |
|
--content-disposition |
string |
Spécifie la manière dont l'objet est affiché. |
|
--content-encoding |
string |
Déclare la méthode d'encodage de l'objet. |
|
--content-type |
string |
Type de contenu de l'objet. |
|
--copy-props |
string |
Contrôle la manière dont les métadonnées et les tags sont copiés. Valeurs valides :
|
|
-d, --dirs |
string |
Télécharge les fichiers et sous-répertoires du répertoire actuel sans télécharger récursivement tous les fichiers des sous-répertoires imbriqués. |
|
--encoding-type |
string |
Méthode d'encodage pour les noms d'objets ou de fichiers d'entrée. Valeur valide : url. |
|
--end-with |
string |
Renvoie les objets qui précèdent ou correspondent à la valeur spécifiée dans l'ordre alphabétique. |
|
--exclude |
stringArray |
Règles d'exclusion pour les chemins ou les noms de fichiers. |
|
--exclude-from |
stringArray |
Lit les règles d'exclusion à partir d'un fichier. |
|
--expires |
string |
Spécifie l'heure d'expiration absolue pour le contenu mis en cache. |
|
--files-from |
stringArray |
Lit une liste de noms de fichiers source à partir d'un fichier, en ignorant les lignes vides ou les commentaires. S'applique uniquement aux scénarios de filtrage. |
|
--files-from-raw |
stringArray |
Lit une liste de noms de fichiers source à partir d'un fichier. S'applique uniquement aux scénarios de filtrage. |
|
--filter |
stringArray |
Règles de filtrage pour les chemins ou les noms de fichiers. |
|
--filter-from |
stringArray |
Lit les règles de filtrage à partir d'un fichier. |
|
-f, --force |
/ |
Force l'opération sans demander de confirmation. |
|
--include |
stringArray |
Règles d'inclusion pour les chemins ou les noms de fichiers. |
|
--include-from |
stringArray |
Lit les règles d'inclusion à partir d'un fichier. |
|
-j, --job |
int |
Nombre de tâches simultanées (par défaut : 3). Remarque
Ce paramètre prend effet uniquement si vous spécifiez également l'une des options suivantes : |
|
--list-objects |
/ |
Utilise l'API ListObjects pour répertorier les objets. |
|
--max-size |
SizeSuffix |
Taille maximale de fichier à transférer. L'unité par défaut est l'octet. Vous pouvez ajouter un suffixe : B|K|M|G|T|P. Remarque : 1 K (KiB) = 1 024 o. |
|
--metadata |
strings |
Métadonnées définies par l'utilisateur pour l'objet, au format clé=valeur. |
|
--metadata-directive |
string |
Spécifie comment définir les métadonnées pour l'objet de destination. Valeurs valides :
|
|
--metadata-exclude |
stringArray |
Règles d'exclusion pour les métadonnées d'objet. |
|
--metadata-filter |
stringArray |
Règles de filtrage pour les métadonnées d'objet. |
|
--metadata-filter-from |
stringArray |
Lit les règles de filtrage des métadonnées d'objet à partir d'un fichier. |
|
--metadata-include |
stringArray |
Règles d'inclusion pour les métadonnées d'objet. |
|
--min-age |
Durée |
Télécharge uniquement les fichiers modifiés avant l'intervalle de temps spécifié. L'unité par défaut est la seconde. Vous pouvez utiliser des suffixes comme h (heures). Par exemple, 1h signifie 1 heure. Remarque
|
|
--max-age |
Durée |
Télécharge uniquement les fichiers modifiés dans l'intervalle de temps spécifié. L'unité par défaut est la seconde. Vous pouvez utiliser des suffixes comme h (heures). Par exemple, 1h signifie 1 heure. Remarque
|
|
--min-mtime |
Heure |
Télécharge uniquement les fichiers modifiés après l'heure spécifiée. Format de l'heure : UTC, par exemple, 2006-01-02T15:04:05. Remarque
|
|
--max-mtime |
Heure |
Télécharge uniquement les fichiers modifiés avant l'heure spécifiée. Format de l'heure : UTC, par exemple, 2006-01-02T15:04:05. |
|
--min-size |
SizeSuffix |
Taille minimale de fichier à transférer. L'unité par défaut est l'octet. Vous pouvez ajouter un suffixe : B|K|M|G|T|P. Remarque : 1 K (KiB) = 1 024 o. |
|
--no-progress |
/ |
N'affiche pas la barre de progression. |
|
--page-size |
int |
Nombre maximal d'objets répertoriés par page lors du téléchargement par lot (par défaut : 1 000). Plage valide : 1–1 000. |
|
--parallel |
int |
Nombre de tâches simultanées pour les opérations internes sur un seul fichier. |
|
--part-size |
SizeSuffix |
Taille des parties pour les opérations multipart. Par défaut, ossutil calcule une taille de partie appropriée en fonction de la taille du fichier. Plage valide : 100 KiB–5 GiB. |
|
-r, --recursive |
/ |
Effectue les opérations de manière récursive. Lorsque cette option est spécifiée, la commande agit sur tous les objets correspondants dans le bucket. Sinon, elle agit uniquement sur l'objet spécifié par le chemin. |
|
--request-payer |
string |
Méthode de paiement pour la requête. Définissez cette option sur requester si le bucket utilise le mode de paiement par le demandeur. |
|
--size-only |
/ |
Télécharge uniquement les fichiers source dont la taille diffère de celle des fichiers de destination. |
|
--start-after |
string |
Renvoie les objets qui suivent la valeur spécifiée dans l'ordre alphabétique, en excluant la valeur elle-même. |
|
--storage-class |
string |
Classe de stockage de l'objet. Valeurs valides :
|
|
--tagging |
strings |
Tags pour l'objet, au format clé=valeur. |
|
--tagging-directive |
string |
Spécifie comment définir les tags pour l'objet de destination. Valeurs valides :
|
|
-u, --update |
/ |
Ignore les fichiers qui existent déjà à la destination et dont l'heure de modification est plus récente que celle des fichiers source. Remarque
Si un fichier existe déjà à la destination mais que son heure de modification est plus ancienne que celle du fichier source, il sera mis à jour. |
|
--ignore-existing |
/ |
Ignore les fichiers qui existent déjà à la destination. |
|
--version-id |
string |
ID de version de l'objet. |
|
--write-buffer-size |
SizeSuffix |
Taille du tampon mémoire utilisé pour les écritures. Aligné automatiquement sur des limites de 4 Ko. Prend en charge les suffixes B / K / M (par défaut : 128 KiB). Plage valide : 0–32 MiB. |
À partir d'ossutil 2.3.0, les options --job, --parallel, --bigfile-threshold, --part-size et --write-buffer-size peuvent être configurées dans un fichier de configuration. Ajoutez-les sous la section de profil correspondante au format key=value (par exemple, job=10), ou utilisez ossutil config set pour les écrire. Les options de ligne de commande ont priorité sur les paramètres du fichier de configuration.
Pour connaître les options de ligne de commande globales prises en charge, consultez la rubrique Options de ligne de commande globales.
Les règles de nommage pour les fichiers de destination sont les suivantes :
Pour les téléchargements de fichiers uniques, si la destination est un répertoire, le fichier est créé dans ce répertoire en utilisant le chemin relatif du fichier source.
Pour les téléchargements de fichiers uniques, si la destination est un fichier ou n'existe pas, le nom de fichier de destination spécifié est utilisé.
Pour les téléchargements par lot, des sous-répertoires sont créés niveau par niveau sous le répertoire racine de destination selon les chemins relatifs des fichiers source, puis les fichiers sont créés.
Le chemin relatif d'un fichier source est obtenu en supprimant tous les caractères jusqu'au dernier « / » inclus dans le préfixe.
Par exemple, dans cp oss://bucket/root/dir/ ..., l'objet root/dir/subdir/test.txt a le chemin relatif subdir/test.txt.
Exemples
Télécharger un fichier unique
Si vous ne spécifiez pas de nom de fichier lors du téléchargement, le nom de fichier d'origine est utilisé localement. Si vous spécifiez un nom de fichier, le fichier est enregistré localement avec ce nom.
-
Enregistrer en utilisant le nom de fichier d'origine
ossutil cp oss://examplebucket/examplefile.txt D:/localpath -
Enregistrer en utilisant un nom de fichier spécifié
ossutil cp oss://examplebucket/examplefile.txt D:/localpath/example.txt
Télécharger plusieurs fichiers
-
Télécharger des fichiers d'un type spécifique
Pour télécharger plusieurs fichiers partageant un modèle de nommage — tel qu'un préfixe ou un suffixe commun — utilisez les options --include et --exclude pour sélectionner les fichiers correspondants.
Télécharger tous les fichiers sauf ceux au format JPG :
ossutil cp oss://examplebucket/destfolder/ D:/localpath/ --exclude "*.jpg" -r -
Télécharger un dossier
ossutil cp -r oss://examplebucket/destfolder/ D:/localpath/ -
Télécharger tous les fichiers depuis la racine du bucket
ossutil cp -r oss://examplebucket D:/localpath/
Limiter la vitesse de téléchargement
Téléchargez examplefile.txt dans le répertoire actuel et limitez la vitesse de téléchargement à 20 Mo/s.
ossutil cp oss://examplebucket/examplefile.txt . --bandwidth-limit 20971520