NAME
    gcloud storage objects update - update Cloud Storage objects

SYNOPSIS
    gcloud storage objects update [URL ...] [--continue-on-error, -c]
        [--preserve-acl, -p] [--read-paths-from-stdin, -I]
        [--recursive, -R, -r] [--storage-class=STORAGE_CLASS, -s STORAGE_CLASS]
        [--clear-encryption-key --decryption-keys=[DECRYPTION_KEY,...]
          --encryption-key=ENCRYPTION_KEY]
        [--cache-control=CACHE_CONTROL --clear-cache-control
          --clear-content-disposition --clear-content-encoding
          --clear-content-language --clear-content-md5 --clear-content-type
          --clear-custom-time --content-disposition=CONTENT_DISPOSITION
          --content-encoding=CONTENT_ENCODING
          --content-language=CONTENT_LANGUAGE --content-md5=MD5_DIGEST
          --content-type=CONTENT_TYPE
          --custom-time=CUSTOM_TIME --clear-custom-metadata
          | --custom-metadata=[CUSTOM_METADATA_KEYS_AND_VALUES,...]
          | --remove-custom-metadata=[METADATA_KEYS,...]
          --update-custom-metadata=[CUSTOM_METADATA_KEYS_AND_VALUES,...]]
        [--if-generation-match=GENERATION
          --if-metageneration-match=METAGENERATION] [GCLOUD_WIDE_FLAG ...]

DESCRIPTION
    Update Cloud Storage objects.

EXAMPLES
    Update a Google Cloud Storage object's custom-metadata:

        $ gcloud storage objects update gs://bucket/my-object \
            --custom-metadata=key1=value1,key2=value2

    Rewrite all JPEG images to the NEARLINE storage class:

        $ gcloud storage objects update gs://bucket/*.jpg \
            --storage-class=NEARLINE

        You can also provide a precondition on an object's metageneration in
        order to avoid potential race conditions:

        $ gcloud storage objects update gs://bucket/*.jpg \
            --storage-class=NEARLINE --if-metageneration-match=123456789

POSITIONAL ARGUMENTS
     [URL ...]
        Specifies URLs of objects to update.

FLAGS
     --continue-on-error, -c
        If any operations are unsuccessful, the command will exit with a
        non-zero exit status after completing the remaining operations. This
        flag takes effect only in sequential execution mode (i.e. processor and
        thread count are set to 1). Parallelism is default.

     --preserve-acl, -p
        Preserves ACLs when copying in the cloud. This feature is supported for
        only Google Cloud Storage and requires OWNER access to all copied
        objects. To use the destination bucket's default policy (necessary for
        uniform bucket-level access), use --no-preserve-acl. Enabled by
        default, use -p to disable.

     --read-paths-from-stdin, -I
        Read the list of objects to update from stdin. No need to enter a
        source argument if this flag is present. Example: "storage objects
        update -I --content-type=new-type"

     --recursive, -R, -r
        Recursively update objects under any buckets or directories that match
        the URL expression.

     --storage-class=STORAGE_CLASS, -s STORAGE_CLASS
        Specify the storage class of the object. Using this flag triggers a
        rewrite of underlying object data.

ENCRYPTION FLAGS
     --clear-encryption-key
        Clears the encryption key associated with an object. Using this flag
        triggers a rewrite of affected objects, which are then encrypted using
        the default encryption key set on the bucket, if one exists, or else
        with a Google-managed encryption key.

     --decryption-keys=[DECRYPTION_KEY,...]
        A comma-separated list of customer-supplied encryption keys (RFC 4648
        section 4 base64-encoded AES256 strings) that will be used to decrypt
        Google Cloud Storage objects. Data encrypted with a customer-managed
        encryption key (CMEK) is decrypted automatically, so CMEKs do not need
        to be listed here.

     --encryption-key=ENCRYPTION_KEY
        The encryption key to use for encrypting target objects. The specified
        encryption key can be a customer-supplied encryption key (An RFC 4648
        section 4 base64-encoded AES256 string), or a customer-managed
        encryption key of the form
        projects/{project}/locations/{location}/keyRings/
        {key-ring}/cryptoKeys/{crypto-key}. The specified key also acts as a
        decryption key, which is useful when copying or moving encryted data to
        a new location. Using this flag in an objects update command triggers a
        rewrite of target objects.

OBJECT METADATA FLAGS
     --cache-control=CACHE_CONTROL
        How caches should handle requests and responses.

     --clear-cache-control
        Clears object cache control.

     --clear-content-disposition
        Clears object content disposition.

     --clear-content-encoding
        Clears content encoding.

     --clear-content-language
        Clears object content language.

     --clear-content-md5
        Clears object content MD5.

     --clear-content-type
        Clears object content type.

     --clear-custom-time
        Clears object custom time.

     --content-disposition=CONTENT_DISPOSITION
        How content should be displayed.

     --content-encoding=CONTENT_ENCODING
        How content is encoded (e.g. gzip).

     --content-language=CONTENT_LANGUAGE
        Content's language (e.g. en signifies "English").

     --content-md5=MD5_DIGEST
        Manually specified MD5 hash digest for the contents of an uploaded
        file. This flag cannot be used when uploading multiple files. The
        custom digest is used by the cloud provider for validation.

     --content-type=CONTENT_TYPE
        Type of data contained in the object (e.g. text/html).

     --custom-time=CUSTOM_TIME
        Custom time for Google Cloud Storage objects in RFC 3339 format.

     At most one of these can be specified:

       --clear-custom-metadata
          Clears all custom metadata on objects. When used with
          --preserve-posix, POSIX attributes will still be stored in custom
          metadata.

       --custom-metadata=[CUSTOM_METADATA_KEYS_AND_VALUES,...]
          Sets custom metadata on objects. When used with --preserve-posix,
          POSIX attributes are also stored in custom metadata.

       Flags that preserve unspecified existing metadata cannot be used with
       --custom-metadata or --clear-custom-metadata, but can be specified
       together:

         --remove-custom-metadata=[METADATA_KEYS,...]
            Removes individual custom metadata keys from objects. This flag can
            be used with --update-custom-metadata. When used with
            --preserve-posix, POSIX attributes specified by this flag are not
            preserved.

         --update-custom-metadata=[CUSTOM_METADATA_KEYS_AND_VALUES,...]
            Adds or sets individual custom metadata key value pairs on objects.
            Existing custom metadata not specified with this flag is not
            changed. This flag can be used with --remove-custom-metadata. When
            keys overlap with those provided by --preserve-posix, values
            specified by this flag are used.

PRECONDITION FLAGS
     --if-generation-match=GENERATION
        Execute only if the generation matches the generation of the requested
        object.

     --if-metageneration-match=METAGENERATION
        Execute only if the metageneration matches the metageneration of the
        requested object.

GCLOUD WIDE FLAGS
    These flags are available to all commands: --access-token-file, --account,
    --billing-project, --configuration, --flags-file, --flatten, --format,
    --help, --impersonate-service-account, --log-http, --project, --quiet,
    --trace-token, --user-output-enabled, --verbosity.

    Run $ gcloud help for details.

NOTES
    This variant is also available:

        $ gcloud alpha storage objects update

