You can use the -h option to view all options supported by ossutil.

Command syntax

./ossutil -h
To view the options supported by a command, run the ossutil help [command] command, such as ossutil help cp.

Common options

The following section describes some common options that can be used in most ossutil commands:

  • -c, --config-file

    Specifies the configuration file path of ossutil. ossutil reads the configuration file during startup, and writes configurations to the file by using the config command. When managing buckets that belong to different accounts, you can generate multiple configuration files, and select one to serve as the default configuration file. When managing buckets that belong to other accounts, you can use the -c option to specify the corresponding configuration files.

  • -e, --endpoint

    Specifies the endpoint of a bucket. When you manage buckets across regions, you can use the -e option to specify the regions.

  • -i, --access-key-id

    Specifies the AccessKey ID used to access OSS. When managing buckets that belong to different accounts, you can use the -i option to specify the corresponding AccessKey IDs.

  • -k, --access-key-secret

    Specifies the AccessKey secret used to access OSS. When managing buckets that belong to different accounts, you can use the -k option to specify the corresponding AccessKey secrets.

  • --loglevel
    Generates the ossutil log file ossutil.log in the current working directory. The default value is null, indicating that no log files are generated.
    • Valid values:
    • info: generates operations logs.
      ./ossutil [command] --loglevel=info
    • debug: generates logs that contain HTTP requests and responses and original signature strings to locate problems.
      ./ossutil [command] --loglevel=debug
  • --proxy-host, --proxy-user, --proxy-pwd

    If your environment requires a proxy server to access websites, you must use these three options to specify the proxy server information. ossutil uses the specified information to access OSS through the proxy server.

    Example:
    ./ossutil ls oss://bucket1 --proxy-host http://47.88. **.**:3128 --proxy-user test --proxy-pwd test

Options

The following table describes all options supported by ossutil.
Option Description
-s, --short-format Lists items in short format. The long format is used if this option is not specified.
--bigfile-threshold Specifies the size of a large object for which to start resumable data transfer. Unit: bytes. Valid values: non-negative integers. Default value: 100 MB.
--acl Configures the access control list (ACL) for an object or a bucket.
--range Specifies the byte range of the object to be downloaded. Bytes are numbered from 0.
  • You can specify a range. For example, 3-9 indicates that the range is from byte 3 to byte 9 (including byte 3 and byte 9).
  • You can specify the field from which the download starts. For example, 3- indicates that the range is from byte 3 to the end of the object (including byte 3).
  • You can specify the field with which the download ends. For example, -9 indicates that the range is from byte 0 to byte 9 (including byte 9).
--all-versions Specifies all versions of an object.
--type Specifies the algorithm that is used for calculation. Valid values: crc64 and md5. Default value: crc64.
-v, --version Displays the ossutil version and exits.
-u, --update Updates the ossutil version.
--origin Specifies the value of the Origin header in an HTTP request.
--upmode Specifies the upload method. Valid values: normal, append, and multipart. Default value: normal. This option is used with the probe command.
--sse-algorithm Specifies the server-side encryption algorithm. Valid values: KMS and AES256.
--include Includes objects that match a specific string such as *.jpg.
--exclude Excludes objects that match a specific string such as *.txt.
-r, --recursive Recursively performs operations on objects in a bucket. If this option is specified, commands that support this option will perform operations on all objects in a bucket that meet the specified conditions. If this option is not specified, the commands will only perform operations on the specified object.
--addr Specifies a network address, which is a domain name in most cases. This option is used with the probe command.
--kms-masterkey-id Specifies the CMK ID used for encryption in Key Management Service (KMS).
--version-id Specifies the version ID of an object.
--version-id-marker Specifies the object version from which you want to start listing.
-m, --multipart Specifies that operations are only to be performed on uncompleted multipart upload tasks in a bucket instead of objects.
-d, --directory Lists objects and subdirectories in the current directory, instead of recursively displaying all objects in all subdirectories.
--payer Specifies the payer of the request. If pay-by-requester is enabled, you can set this option to requester.
--maxupspeed Specifies the maximum upload speed. Unit: KB/s. Default value: 0 (unlimited).
--retry-times Specifies the number of times an operation is retried if the operation fails. Valid values: 1 to 500. Default value: 10.
-c, --config-file Specifies the configuration file path of ossutil. ossutil reads the configuration file during startup, and writes configurations to the file by using the config command.
--download Downloads an object from OSS. This option is used with the probe command.
-j, --jobs Specifies the number of concurrent operations performed across multiple objects. Valid values: 1 to 10000. Default value: 3.
-a, --all-type Specifies that operations are to be performed on both the objects and uncompleted multipart upload tasks in a bucket.
--disable-empty-referer Indicates that the referer field cannot be left empty. This option is used with the referer command.
--method Specifies the HTTP request method, which can be PUT, GET, or DELETE.
--output-dir Specifies the directory in which output objects are located. Output objects include report objects generated due to errors that occur when you use the cp command to copy multiple objects. For more information about the report objects, see the help information of the cp command. The default value is the ossutil_output directory in the current directory.
--meta Configures the metadata of an object in [header:value#header:value...] format. Example: Cache-Control: no-cache#Content-Encoding: gzip.
--object Specifies the name of an object in OSS. This option is used with the probe command.
-e, --endpoint Specifies the basic endpoint of ossutil. This option value will overwrite the corresponding endpoint in the configuration file. For more information about region endpoints, see Regions and endpoints.
--limited-num Specifies the maximum number of returned results.
-L, --language Specifies the language ossutil uses. Valid values: CH and EN. Default value: CH. To set this option to CH, make sure that your system supports UTF-8 encoding.
--delete Specifies a delete operation.
-b, --bucket Specifies the bucket on which to perform the operation.
--disable-crc64 Disables CRC-64. By default, ossutil enables CRC-64 during data transmission.
--upload Uploads an object to OSS. This option is used with the probe command.
--part-size Specifies the part size in bytes. By default, ossutil calculates the appropriate part size based on the object size. You can set this option to any positive integer if you need to optimize performance or are operating under special constraints.
--timeout Specifies the timeout period of a signed URL request. Unit: seconds. Valid values: non-negative integers. Default value: 60.
-k, --access-key-secret Specifies the AccessKey secret used to access OSS. This option value will overwrite the corresponding configurations in the configuration file.
--checkpoint-dir Specifies the checkpoint directory path. Default value: .ossutil_checkpoint. If a resumable data transfer fails, ossutil automatically creates this directory and records the checkpoint information in the directory. If a resumable data transfer succeeds, ossutil deletes this directory. If this option is specified, make sure that you have permissions to delete the specified directory.
--url Specifies the URL of an object. This option is used with the probe command.
--marker Specifies the bucket name, object name, or multipart upload ID from which you want to start listing.
-f, --force Forces an operation without prompting the user for confirmation.
--snapshot-path If you specify the --snapshot-path option when uploading or downloading multiple objects, ossutil takes a snapshot of the upload or download and stores the snapshot information in the specified directory. When this option is specified the next time objects are uploaded or downloaded, ossutil will read the snapshot information from the specified directory to perform incremental upload or download.
Notice
  • The --snapshot-path option is used in certain scenarios to accelerate the incremental upload or download of objects. This option can be used when the number of objects is large and no other users modify the corresponding objects in OSS during the two uploads. This option cannot be used to copy objects.
  • The --snapshot-path option records the local lastModifiedTime of uploaded or downloaded objects, and then compares that recorded lastModifiedTime with that of objects to be uploaded or downloaded next time to determine which objects can be skipped. When using this option, make sure that the corresponding objects in OSS are not modified during the two uploads or downloads. In other scenarios where objects are updated in OSS during the two uploads or downloads, use the --update option to perform incremental upload or download on objects.
  • ossutil does not automatically delete snapshot information from the directory specified by snapshot-path. If the snapshot information is not necessary to retain, remove the directory.
  • Additional overheads are required to read and write snapshot information. We recommend that you do not use this option in any of the following scenarios: The number of objects to be uploaded or downloaded is small. The network is properly connected. Other users need to perform operations on those objects. In this case, you can use the --update option to perform incremental upload or download.
  • The --update and --snapshot-path options can be used together. ossutil first uses the --snapshot-path option to determine whether to skip the upload or download of an object. If the upload or download is not skipped by --snapshot-path, ossutil then uses the --update option to determine whether to skip the upload or download of the object.
--loglevel Specifies the log level. The default value is null, indicating that no log files are generated. Valid values:
  • info: generates prompt logs.
  • debug: generates detailed logs that contain corresponding HTTP request and response information.
--storage-class Specifies the storage method of an object. Valid values: Standard, IA, and Archive. Default value: Standard.
-i, --access-key-id Specifies the AccessKey ID used to access OSS. This option value will overwrite the corresponding configurations in the configuration file.
-t, --sts-token Optional. This option specifies the STS token used to access OSS. This option value will overwrite the corresponding configurations in the configuration file. This option is required only when you use a temporary STS token to access the OSS bucket. Otherwise, you can leave this parameter unspecified. For more information about how to generate an STS token, see Temporary access credential.
--parallel Specifies the number of concurrent operations performed on a single object. Valid values: 1 to 10000. By default, ossutil automatically sets the value of this option based on the operation type and object size.
--partition-download Specifies the partition to download. The value of this option is in "partition number: total number of partitions" format. A value of 1:5 indicates that ossutil downloads partition 1 out of the total five partitions. Partitions are numbered starting from 1. Partitioning rules for objects are determined by ossutil. This option divides an object to be downloaded into multiple partitions that can be downloaded by multiple ossutil commands. Each ossutil command downloads its own partition. You can run multiple ossutil commands on different machines at the same time.
--bucketname Specifies the name of a bucket. This option is used with the probe command.
--encoding-type Specifies the encoding type of the object name. If this option is specified, this value must be url. If this option is not specified, the object name is not encoded. Bucket names cannot be URL-encoded.
Notice The value of this option must be in oss: //bucket/url_encode (object) format. For example, the URL oss: //bucket/object must be entered as oss: //bucket/url_encode (object). The oss: //bucket/ string does not need to be encoded.
--origin Specifies the value of the Origin header in an HTTP request. This option value indicates the source domain of a cross-domain request.
--acr-method Specifies the value of the Access-Control-Request-Method header in an HTTP request. Valid values: GET, PUT, POST, DELETE, and HEAD.
--acr-headers Specifies the value of the Access-Control-Request-Headers header in an HTTP request. This option value indicates header fields, except simple ones, to be used in an actual request. To specify multiple headers, separate different headers with commas (,) and enclose the headers with double quotation marks ("). Example: --acr-headers "header1,header2,header3".
--upload-id-marker Specifies the multipart upload ID from which you want to start listing.
-h, --help Displays help information for a specific command.
--proxy-host Specifies the URL of the proxy server. HTTP, HTTPS, and SOCKS5 proxies are supported. An example of the URL is http://120.79. **.**:3128 or socks5://120.79. **. **:1080.
--proxy-user Specifies the username of the proxy server. The default value is null.
--proxy-pwd Specifies the password of the proxy server. The default value is null.
--trafic-limit Specifies the speed for accessing the object over HTTP. Unit: bit/s. Valid values: 819200 to 838860800 (100 KB/s to 100 MB/s). Default value: 0 (unlimited). This option is used with the sign command.
--local-host Enter the local IP address of ossutil. If your computer has multiple IP addresses, you can specify this option so that ossutil can access OSS through the specified IP address. This option is used with the cp command.
--enable-symlink-dir Specifies that the subdirectory to which the symbolic link points is uploaded. By default, subdirectories are not uploaded. The probe command can be used to check whether an object or a directory to which the symbolic link points is also a symbolic link.
--only-current-dir Specifies that only objects in the current directory are uploaded, downloaded, or copied. The subdirectories in the current directory are ignored.
--disable-dir-object Specifies that no OSS object is generated for the directory during object uploads.
--probe-item Specifies the items to be checked by using the probe command. Valid values:
  • upload-speed: checks the upload bandwidth.
  • download-speed: checks the download bandwidth.
  • cycle-symlink: checks whether an object or a directory to which the symbolic link points in the local directory is also a symbolic link.
--redundancy-type Specifies the data redundancy type of a bucket. Valid values: LRS (local redundant storage) and ZRS (zone-redundant storage). Default value: LRS.
--disable-encode-slash Specifies that forward slashes (/) in the URL path are not encoded.
--disable-all-symlink All objects in the subdirectory to which the symbolic link points and the subdirectory to which the symbolic link points are ignored during object uploads.