Este tema proporciona ejemplos de uso de osscmd.
osscmd quedó obsoleto el 31 de julio de 2019. Alibaba Cloud ya no mantiene ni actualiza osscmd. Sus comandos se integraron en ossutil. Utilice ossutil en su lugar.
Instalar y configurar osscmd
Para usar osscmd, descargue y descomprima el paquete del kit de desarrollo de software (SDK) en Linux o Windows.
Ejecute el comando Python osscmd para consultar las instrucciones. Cada comando tiene dos modos de ejecución. En el siguiente ejemplo se muestra cómo ejecutar el comando gs para consultar los buckets que creó:
-
Método 1: no especifique el AccessKey ID ni el AccessKey secret. osscmd los lee del archivo de configuración predeterminado.
$ python osscmd gs can't get accessid/accesskey, setup use : config --id=accessid --key=accesskeyNotaSi aparece este mensaje, significa que no configuró el AccessKey ID ni el AccessKey secret. Para obtener información sobre el comando de configuración, consulte Method 2.
Si el AccessKey ID y el AccessKey secret están configurados y son válidos, puede ejecutar el comando.
$ python osscmd gs 2021-07-19 08:11 test-oss-sample Bucket Number is: 1 -
Método 2: especifique el AccessKey ID y el AccessKey secret directamente en el comando. osscmd los leerá desde la línea de comandos. Si ambas claves son válidas, el comando devuelve el resultado que se muestra a continuación.
$ python osscmd gs --id=your_id --key=your_key --host=your_endpoint 2021-07-19 08:11 test-oss-sample Bucket Number is: 1Ejecute el siguiente comando para guardar el AccessKey ID y el AccessKey secret en el archivo de configuración predeterminado. El host predeterminado de OSS es oss.aliyuncs.com.
$python osscmd config --id=your_id --key=your_key --host=your_endpointUn mensaje similar a "Your configuration is saved into" indica que el AccessKey ID y el AccessKey secret se guardaron correctamente.
Operaciones básicas
-
Listar los buckets creados
$python osscmd getallbucketSi es un usuario nuevo de OSS y no ha creado ningún bucket, la salida estará vacía.
-
Crear un bucket
Cree un bucket llamado mybucketname.
$python osscmd createbucket mybucketnameLa creación del bucket podría fallar porque los nombres deben ser únicos a nivel global en OSS. En ese caso, utilice un nombre distinto; por ejemplo, uno que incluya una fecha específica.
-
Compruebe que la creación se completó sin errores.
$python osscmd getallbucketSi la operación falla, revise el mensaje de error de osscmd.
-
Consultar objetos
Una vez creado el bucket, consulte los objetos que contiene.
$python osscmd list oss://mybucketname/Como el bucket no contiene objetos, la salida estará vacía.
-
Cargar un objeto
Cargue un objeto al bucket. Suponga que el archivo local se llama local_existed_file y su hash MD5 es el siguiente.
$ md5sum local_existed_file 7625e1adc3a4b129763d580ca0a78e44 local_existed_file $ python osscmd put local_existed_file oss://mybucketname/test_objectNotamd5sumes un comando de Linux y no está disponible en Windows. -
Volver a consultar el objeto
Si el objeto se cargó correctamente, vuelva a consultar los objetos del bucket.
$python osscmd list oss://mybucketname/ -
Descargar un objeto
Descargue un objeto del bucket a un archivo local y compare su hash MD5.
$ python osscmd get oss://mybucketname/test_object download_file $ md5sum download_file 7625e1adc3a4b129763d580ca0a78e44 download_fileNotamd5sumes un comando de Linux y no está disponible en Windows. -
Eliminar un objeto
$ python osscmd delete oss://mybucketname/test_object
-
Eliminar un bucket
NotaNo es posible eliminar un bucket si contiene objetos.
$ python osscmd deletebucket mybucketname
Uso del ciclo de vida
-
Configure una regla de ciclo de vida en un archivo de texto XML
<LifecycleConfiguration> <Rule> <ID>1125</ID> <Prefix>log_backup/</Prefix> <Status>Enabled</Status> <Expiration> <Days>2</Days> </Expiration> </Rule> </LifecycleConfiguration>Esta regla elimina los objetos con el prefijo log_backup/ que tengan más de dos días de antigüedad. Para obtener más información sobre cómo configurar reglas, consulte API Reference.
-
Escribir en el ciclo de vida
python osscmd putlifecycle oss://mybucket lifecycle.xml 0.150(s) elapsed -
Leer una regla de ciclo de vida
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 -
Eliminar un ciclo de vida
python osscmd deletelifecycle oss://mybucket 0.139(s) elapsed -
Leer la regla de ciclo de vida
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!
Configurar la protección contra hotlinking
-
Permitir solicitudes con un encabezado Referer vacío
$osscmd putreferer oss://test --allow_empty_referer=true 0.004(s) elapsed -
Recuperar la configuración de Referer
$osscmd getreferer oss://test <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>true</AllowEmptyReferer> <RefererList /> </RefererConfiguration> -
Rechazar solicitudes con un encabezado Referer vacío y permitir solo las provenientes de www.example.com
$osscmd putreferer oss://test --allow_empty_referer=false --referer='www.example.com' 0.092(s) elapsed -
Recuperar la configuración de Referer
$osscmd getreferer oss://test <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>false</AllowEmptyReferer> <RefererList> <Referer>www.example.com</Referer> </RefererList> </RefererConfiguration> -
Rechazar solicitudes con un encabezado Referer vacío y permitir solo las provenientes de www.example.com y www.example.org
$osscmd putreferer oss://test --allow_empty_referer=false --referer='www.example.com,www.example.org' -
Recuperar la configuración de 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>
Usar el registro
-
Habilitar el registro
$osscmd putlogging oss://mybucket oss://myloggingbucket/mb -
Recuperar la configuración de registro
$osscmd getlogging oss://mybucket