Cette rubrique présente des exemples d'utilisation d'osscmd.
osscmd est obsolète depuis le 31 juillet 2019. Alibaba Cloud ne maintient ni ne met à jour osscmd. Ses commandes sont intégrées dans ossutil. Utilisez ossutil à la place.
Installation et configuration d'osscmd
Pour utiliser osscmd, téléchargez et décompressez le kit de développement logiciel (SDK) sous Linux ou Windows.
Pour obtenir des instructions, exécutez la commande Python osscmd. Chaque commande dispose de deux modes d'exécution. L'exemple suivant montre comment exécuter la commande gs pour consulter les buckets que vous avez créés :
-
Méthode 1 : Ne spécifiez pas l'AccessKey ID et l'AccessKey secret. osscmd les lit à partir du fichier de configuration par défaut.
$ python osscmd gs can't get accessid/accesskey, setup use : config --id=accessid --key=accesskeyRemarqueSi ce message s'affiche, votre AccessKey ID et votre AccessKey secret ne sont pas configurés. Pour plus d'informations sur la commande de configuration, consultez la Méthode 2.
Si l'AccessKey ID et l'AccessKey secret sont configurés et valides, exécutez la commande.
$ python osscmd gs 2021-07-19 08:11 test-oss-sample Bucket Number is: 1 -
Méthode 2 : Spécifiez l'AccessKey ID et l'AccessKey secret directement dans la commande. osscmd les lit alors depuis la ligne de commande. Si l'AccessKey ID et l'AccessKey secret sont valides, la commande renvoie le résultat suivant.
$ python osscmd gs --id=your_id --key=your_key --host=your_endpoint 2021-07-19 08:11 test-oss-sample Bucket Number is: 1Pour enregistrer votre AccessKey ID et votre AccessKey secret dans le fichier de configuration par défaut, exécutez la commande suivante. L'hôte OSS par défaut est oss.aliyuncs.com.
$python osscmd config --id=your_id --key=your_key --host=your_endpointUn message similaire à « Your configuration is saved into » indique que l'AccessKey ID et l'AccessKey secret ont été enregistrés.
Opérations de base
-
Lister les buckets créés
$python osscmd getallbucketSi vous êtes un nouvel utilisateur d'OSS et que vous n'avez créé aucun bucket, la sortie est vide.
-
Créer un bucket
Créez un bucket nommé mybucketname.
$python osscmd createbucket mybucketnameLa création du bucket peut échouer car les noms de bucket doivent être globalement uniques dans OSS. Dans ce cas, utilisez un autre nom de bucket, par exemple un nom incluant une date spécifique.
-
Vérifiez que la création a réussi.
$python osscmd getallbucketSi l'opération échoue, vérifiez le message d'erreur d'osscmd.
-
Consulter les objets
Après avoir créé un bucket, consultez les objets qu'il contient.
$python osscmd list oss://mybucketname/Étant donné que le bucket ne contient aucun objet, la sortie est vide.
-
Téléverser un objet
Téléversez un objet vers le bucket. Supposons que le fichier local soit nommé local_existed_file et que son hachage MD5 soit le suivant.
$ md5sum local_existed_file 7625e1adc3a4b129763d580ca0a78e44 local_existed_file $ python osscmd put local_existed_file oss://mybucketname/test_objectRemarquemd5sumest une commande Linux et n'est pas disponible sous Windows. -
Consultez à nouveau l'objet
Si l'objet est téléversé, consultez à nouveau les objets du bucket.
$python osscmd list oss://mybucketname/ -
Télécharger un objet
Téléchargez un objet du bucket vers un fichier local et comparez son hachage MD5.
$ python osscmd get oss://mybucketname/test_object download_file $ md5sum download_file 7625e1adc3a4b129763d580ca0a78e44 download_fileRemarquemd5sumest une commande Linux et n'est pas disponible sous Windows. -
Supprimer un objet
$ python osscmd delete oss://mybucketname/test_object
-
Supprimer un bucket
RemarqueUn bucket ne peut pas être supprimé s'il contient des objets.
$ python osscmd deletebucket mybucketname
Utilisation du cycle de vie
-
Configurez une règle de cycle de vie dans un fichier texte XML
<LifecycleConfiguration> <Rule> <ID>1125</ID> <Prefix>log_backup/</Prefix> <Status>Enabled</Status> <Expiration> <Days>2</Days> </Expiration> </Rule> </LifecycleConfiguration>Cette règle supprime les objets dont le préfixe est log_backup/ et qui datent de plus de deux jours. Pour plus d'informations sur la configuration des règles, consultez la Référence API.
-
Appliquer la configuration du cycle de vie
python osscmd putlifecycle oss://mybucket lifecycle.xml 0.150(s) elapsed -
Lire une règle de cycle de vie
python osscmd getlifecycle oss://mybucket <?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>1125</ID> <Prefix>log_backup/</Prefix> <Status>Enabled</Status> <Expiration> <Days>2</Days> </Expiration> </Rule> </LifecycleConfiguration> 0.027(s) elapsed -
Supprimer une configuration de cycle de vie
python osscmd deletelifecycle oss://mybucket 0.139(s) elapsed -
Lire la règle de cycle de vie
python osscmd getlifecycle oss://mybucket Error Headers: [('content-length', '288'), ('server', 'AliyunOSS'), ('connection', 'close'), ('x-oss-request-id', '54C74FEE5D7F6B24E5042630'), ('date', 'Tue, 27 Jan 2015 08:44:30 GMT'), ('content-type', 'application/xml')] Error Body: <?xml version="1.0" encoding="UTF-8"?> <Error> <BucketName>mybucket</BucketName> <Code>NoSuchLifecycle</Code> <Message>No Row found in Lifecycle Table.</Message> <RequestId>54C74FEE5D7F6B24E5042630</RequestId> <HostId>mybucket.oss-maque-hz-a.alibaba.net</HostId> </Error> Error Status: 404 getlifecycle Failed!
Configuration de la protection contre le hotlinking
-
Autoriser les requêtes avec un en-tête Referer vide
$osscmd putreferer oss://test --allow_empty_referer=true 0.004(s) elapsed -
Récupérer la configuration Referer
$osscmd getreferer oss://test <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>true</AllowEmptyReferer> <RefererList /> </RefererConfiguration> -
Interdire les requêtes avec un en-tête Referer vide et autoriser uniquement les requêtes provenant de www.example.com
$osscmd putreferer oss://test --allow_empty_referer=false --referer='www.example.com' 0.092(s) elapsed -
Récupérer la configuration Referer
$osscmd getreferer oss://test <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>false</AllowEmptyReferer> <RefererList> <Referer>www.example.com</Referer> </RefererList> </RefererConfiguration> -
Interdire les requêtes avec un en-tête Referer vide et autoriser uniquement les requêtes provenant de www.example.com et www.example.org
$osscmd putreferer oss://test --allow_empty_referer=false --referer='www.example.com,www.example.org' -
Récupérer la configuration Referer
$osscmd getreferer oss://test <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>false</AllowEmptyReferer> <RefererList> <Referer>www.example.com</Referer> <Referer>www.example.org</Referer> </RefererList> </RefererConfiguration>
Utilisation de la journalisation
-
Activer la journalisation
$osscmd putlogging oss://mybucket oss://myloggingbucket/mb -
Récupérer la configuration de journalisation
$osscmd getlogging oss://mybucket