Allows interacting with buckets and files in the Amazon AWS S3 service, including creating, removing, and listing buckets, as well as listing, uploading, downloading, and removing files in a specified bucket.
Retrieves a list of all buckets contained in the S3 environment using the only AWS external server defined in the configuration, and displaying the list in human-readable text:
amazon-s3-client list-buckets
Retrieves a list of buckets whose names start with "ldif-", ordered from newest to oldest, and with JSON-formatted output using a single line per object. It will use the configuration in the specified external server instance when communicating with the AWS service:
amazon-s3-client list-buckets --aws-server-name AWS \ --output-format single-line-json --name-pattern '^ldif-.*$' --newest-first
Creates a bucket named in the S3 using a newly generated UUID as the bucket name and the only AWS external server defined in the configuration:
amazon-s3-client create-bucket
Creates a bucket named 'my-bucket' in the S3 environment using the specified AWS external server configuration and generating JSON-formatted output:
amazon-s3-client create-bucket --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket
Deletes the bucket named 'my-bucket' from the S3 environment using the only AWS external server defined in the configuration:
amazon-s3-client delete-bucket --bucket-name my-bucket
Deletes the bucket named 'my-bucket' from the S3 environment, including any files contained in it, and generating multi-line JSON-formatted output:
amazon-s3-client delete-bucket --aws-server-name AWS \ --output-format multi-line-json --bucket-name my-bucket
Retrieves a list of all files contained in S3 bucket 'my-bucket' using the only AWS external server defined in the configuration, and displaying the list in human-readable text:
amazon-s3-client list-files --bucket-name my-bucket
Retrieves a list of all files contained in the S3 bucket 'my-bucket' whose names end with ".ldif", ordered from newest to oldest, and with JSON-formatted output using a single line per object. It will use the configuration in the specified external server instance when communicating with the AWS service:
amazon-s3-client list-files --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --newest-first
Uploads the specified file to S3 bucket 'my-bucket'. Output will be provided as human-readable text, and the tool will use the only AWS external server instance defined in the configuration:
amazon-s3-client upload-file --bucket-name my-bucket \ --local-file /path/to/file/to/upload
Uploads the specified file to S3 bucket 'my-bucket'. The configuration in the specified AWS external server instance will be used, and output will be JSON-formatted with a single line per object:
amazon-s3-client upload-file --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --local-file /path/to/file/to/upload --remote-name my-uploaded-file
Downloads file 'name-of-file-to-download' from S3 bucket 'my-bucket' into the current working directory. The name of the file will be preserved, output will be provided as human-readable text, the tool will use the only AWS external server instance defined in the configuration:
amazon-s3-client download-file --bucket-name my-bucket \ --remote-name name-of-file-to-download
Downloads file 'name-of-file-to-download' from S3 bucket 'my-bucket' to the specified local path. The tool will use the specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client download-file --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --remote-name name-of-file-to-download --to-file /path/for/downloaded/file
Downloads the newest file contained in S3 bucket 'my-bucket' to the current working directory. The name of the file will be preserved, output will be provided as human-readable text, and the tool will use the only AWS external server instance defined in the configuration:
amazon-s3-client download-newest-files --bucket-name my-bucket
Downloads the 5 newest files whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --to-directory /path/for/downloaded/files \ --maximum-count 5
Downloads all files from the last week whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted across multiple lines, with a separate line for each value:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format multi-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --to-directory /path/for/downloaded/files \ --maximum-age "1 week"
Downloads all files created since the given timestamp (in generalized time format) whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --to-directory /path/for/downloaded/files \ --minimum-timestamp 20241201060000.000Z
Downloads all files created since the given timestamp (in RFC 3339 format) whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted across multiple lines, with a separate line for each value:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format multi-line-json --bucket-name my-bucket \ --to-directory /path/for/downloaded/files \ --minimum-timestamp 2024-12-01T06:00:00.000Z
Deletes file 'name-of-file-to-delete' from S3 bucket 'my-bucket'. The tool will use the only AWS external server instance defined in the server configuration, and output will be provided as human-readable text:
amazon-s3-client delete-file --bucket-name my-bucket \ --remote-name name-of-file-to-delete
Deletes file 'name-of-file-to-delete' from S3 bucket 'my-bucket'. The tool will use specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client delete-file --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --remote-name name-of-file-to-delete
Creates a new bucket in the S3 environment
Creates a bucket named in the S3 using a newly generated UUID as the bucket name and the only AWS external server defined in the configuration:
amazon-s3-client create-bucket
Creates a bucket named 'my-bucket' in the S3 environment using the specified AWS external server configuration and generating JSON-formatted output:
amazon-s3-client create-bucket --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket
--bucket-name {name}
Description | The name of the bucket to create. If this is not specified, then a UUID will be generated for use as the bucket name |
Required | No |
Multi-Valued | No |
Deletes a bucket from the S3 environment
Deletes the bucket named 'my-bucket' from the S3 environment using the only AWS external server defined in the configuration:
amazon-s3-client delete-bucket --bucket-name my-bucket
Deletes the bucket named 'my-bucket' from the S3 environment, including any files contained in it, and generating multi-line JSON-formatted output:
amazon-s3-client delete-bucket --aws-server-name AWS \ --output-format multi-line-json --bucket-name my-bucket
--bucket-name {name}
Description | The name of the bucket to delete. This must be specified |
Required | Yes |
Multi-Valued | No |
--delete-files
Description | Indicates that the tool should automatically delete any files contained in the bucket before deleting the bucket itself. If this argument is not specified, then an attempt to delete a non-empty bucket will fail |
Deletes a file from a specified S3 bucket
Deletes file 'name-of-file-to-delete' from S3 bucket 'my-bucket'. The tool will use the only AWS external server instance defined in the server configuration, and output will be provided as human-readable text:
amazon-s3-client delete-file --bucket-name my-bucket \ --remote-name name-of-file-to-delete
Deletes file 'name-of-file-to-delete' from S3 bucket 'my-bucket'. The tool will use specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client delete-file --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --remote-name name-of-file-to-delete
--bucket-name {name}
Description | The name of the S3 bucket containing the file to delete. This must be specified |
Required | Yes |
Multi-Valued | No |
--remote-name {name}
Description | The name of the file to delete from the S3 bucket. This must be specified |
Required | Yes |
Multi-Valued | No |
Downloads a specified file from an S3 bucket
Downloads file 'name-of-file-to-download' from S3 bucket 'my-bucket' into the current working directory. The name of the file will be preserved, output will be provided as human-readable text, the tool will use the only AWS external server instance defined in the configuration:
amazon-s3-client download-file --bucket-name my-bucket \ --remote-name name-of-file-to-download
Downloads file 'name-of-file-to-download' from S3 bucket 'my-bucket' to the specified local path. The tool will use the specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client download-file --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --remote-name name-of-file-to-download --to-file /path/for/downloaded/file
--bucket-name {name}
Description | The name of the S3 bucket containing the file to download. This must be specified |
Required | Yes |
Multi-Valued | No |
--remote-name {name}
Description | The name of the file to download from the S3 bucket. This must be specified |
Required | Yes |
Multi-Valued | No |
--to-file {path}
Description | The local path to use when downloading the file. If this is specified, then it may reference either a directory (which must exist, in which case the file will be downloaded into that directory using the same name it has in the S3 bucket) or a file (which may or may not exist but whose parent directory does exist, in which case the file will be downloaded with the specified name). If this is not specified, then the file will be downloaded into the current working directory with the same name that it has in the S3 bucket |
Required | No |
Multi-Valued | No |
--progress-interval {duration}
Description | The interval to use when reporting on download progress. If is not specified, a default interval of 10 seconds will be used. A duration of 0 seconds indicates that the tool should not report intermediate download progress messages |
Required | No |
Multi-Valued | No |
Downloads one or more files from a specified S3 bucket, in order from newest to oldest
Downloads the newest file contained in S3 bucket 'my-bucket' to the current working directory. The name of the file will be preserved, output will be provided as human-readable text, and the tool will use the only AWS external server instance defined in the configuration:
amazon-s3-client download-newest-files --bucket-name my-bucket
Downloads the 5 newest files whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --to-directory /path/for/downloaded/files \ --maximum-count 5
Downloads all files from the last week whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted across multiple lines, with a separate line for each value:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format multi-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --to-directory /path/for/downloaded/files \ --maximum-age "1 week"
Downloads all files created since the given timestamp (in generalized time format) whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted with a single line per object:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --to-directory /path/for/downloaded/files \ --minimum-timestamp 20241201060000.000Z
Downloads all files created since the given timestamp (in RFC 3339 format) whose names end with '.ldif' from S3 bucket 'my-bucket' into local directory '/path/for/downloaded/files'. The tool will use the specified AWS external server, and output will be JSON-formatted across multiple lines, with a separate line for each value:
amazon-s3-client download-newest-files --aws-server-name AWS \ --output-format multi-line-json --bucket-name my-bucket \ --to-directory /path/for/downloaded/files \ --minimum-timestamp 2024-12-01T06:00:00.000Z
--bucket-name {name}
Description | The name of the S3 bucket containing the files to download. THis must be specified |
Required | Yes |
Multi-Valued | No |
--name-pattern {regex}
Description | A regular expression that may be used to restrict the set of files eligible to be downloaded. If this argument is provided, then only files whose names match the given pattern will be considered for download |
Required | No |
Multi-Valued | No |
--to-directory {path}
Description | The path to the local directory into which the downloaded files will be placed. If specified, then the specified path must exist, and it must be a directory. If this is not specified, then the files will be downloaded into the current working directory |
Required | No |
Multi-Valued | No |
--maximum-count {count}
Description | The maximum number of files to download from the S3 bucket. If none of the --maximum-count, --maximum-age, or --minimum-timestamp arguments are provided, then only the single newest file (matching the specified name pattern, if applicable) will be downloaded |
Upper Bound | 2147483647 |
Required | No |
Multi-Valued | No |
--maximum-age {duration}
Description | The maximum age of files to download from the S3 bucket. If this is specified, then the value must be given as an integer followed by a time unit (e.g., '1 hour' or '3 days'). If none of the --maximum-count, --maximum-age, or --minimum-timestamp arguments are provided, then only the single newest file (matching the specified name pattern, if applicable) will be downloaded |
Required | No |
Multi-Valued | No |
--minimum-timestamp {timestamp}
Description | A timestamp specifying the minimum creation time for files to download from the S3 bucket. If this is specified, then value may be specified in either the generalized time format (e.g., 'YYYYMMDDhhmmss.uuuZ') or the ISO 8601 format described in RFC 3339 (e.g., 'YYYY-MM-DDThh:mm:ss.uuuZ'). If none of the --maximum-count, --maximum-age, or --minimum-timestamp arguments are provided, then only the single newest file (matching the specified name pattern, if applicable) will be downloaded |
Required | No |
Multi-Valued | No |
--progress-interval {duration}
Description | The interval to use when reporting on download progress. If is not specified, a default interval of 10 seconds will be used. A duration of 0 seconds indicates that the tool should not report intermediate download progress messages |
Required | No |
Multi-Valued | No |
Retrieves a list of the buckets defined in the S3 environment
Retrieves a list of all buckets contained in the S3 environment using the only AWS external server defined in the configuration, and displaying the list in human-readable text:
amazon-s3-client list-buckets
Retrieves a list of buckets whose names start with "ldif-", ordered from newest to oldest, and with JSON-formatted output using a single line per object. It will use the configuration in the specified external server instance when communicating with the AWS service:
amazon-s3-client list-buckets --aws-server-name AWS \ --output-format single-line-json --name-pattern '^ldif-.*$' --newest-first
--name-pattern {regex}
Description | A regular expression that may be used to restrict the buckets that are returned. If this argument is provided, then only buckets whose names match the given pattern will be included. If this is not provided, then all buckets will be included |
Required | No |
Multi-Valued | No |
--oldest-first
Description | Indicates that the buckets should be listed in chronological order based on the time they were created, with older buckets listed before newer buckets. At most one of the --oldest-first and --newest-first arguments may be provided, and if neither is given, then they will be listed in alphabetical order by name |
--newest-first
Description | Indicates that the buckets should be listed in chronological order based on the time they were created, with newer buckets listed before older buckets. At most one of the --oldest-first and --newest-first arguments may be provided, and if neither is given, then they will be listed in alphabetical order by name |
Retrieves a list of files contained in a specified S3 bucket
Retrieves a list of all files contained in S3 bucket 'my-bucket' using the only AWS external server defined in the configuration, and displaying the list in human-readable text:
amazon-s3-client list-files --bucket-name my-bucket
Retrieves a list of all files contained in the S3 bucket 'my-bucket' whose names end with ".ldif", ordered from newest to oldest, and with JSON-formatted output using a single line per object. It will use the configuration in the specified external server instance when communicating with the AWS service:
amazon-s3-client list-files --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --name-pattern '^.+\.ldif$' --newest-first
--bucket-name {name}
Description | The name of the bucket in which to list the files. This must be specified |
Required | Yes |
Multi-Valued | No |
--name-pattern {regex}
Description | A regular expression that may be used to restrict the files that are returned. If this argument is provided, then only files whose names match the given pattern will be included. If this is not provided, then all files will be included |
Required | No |
Multi-Valued | No |
--oldest-first
Description | Indicates that the files should be listed in chronological order based on the time they were created, with older files listed before newer files. At most one of the --oldest-first and --newest-first arguments may be provided, and if neither is given, then they will be listed in alphabetical order by name |
--newest-first
Description | Indicates that the files should be listed in chronological order based on the time they were created, with newer files listed before older files. At most one of the --oldest-first and --newest-first arguments may be provided, and if neither is given, then they will be listed in alphabetical order by name |
Uploads a local file to a specified S3 bucket
Uploads the specified file to S3 bucket 'my-bucket'. Output will be provided as human-readable text, and the tool will use the only AWS external server instance defined in the configuration:
amazon-s3-client upload-file --bucket-name my-bucket \ --local-file /path/to/file/to/upload
Uploads the specified file to S3 bucket 'my-bucket'. The configuration in the specified AWS external server instance will be used, and output will be JSON-formatted with a single line per object:
amazon-s3-client upload-file --aws-server-name AWS \ --output-format single-line-json --bucket-name my-bucket \ --local-file /path/to/file/to/upload
--bucket-name {name}
Description | The name of the bucket into which the file should be uploaded. This must be specified |
Required | Yes |
Multi-Valued | No |
--local-file {path}
Description | The path to the local file to be uploaded. This must be specified, the file must exist, and it must be a regular file |
Required | Yes |
Multi-Valued | No |
--progress-interval {duration}
Description | The interval to use when reporting on upload progress. If is not specified, a default interval of 10 seconds will be used. A duration of 0 seconds indicates that the tool should not report intermediate upload progress messages |
Required | No |
Multi-Valued | No |
-V
--version
Description | Display Directory Server version information |
-H
--help
Description | Display general usage information |
--help-debug
Description | Display help for using debug options |
Advanced | Yes |
--aws-server-name {name}
Description | The name of the Amazon AWS external server instance defined in the server configuration that will be used to connect and authenticate to the AWS service. This may be omitted if exactly one AWS external server is defined in the configuration |
Required | No |
Multi-Valued | No |
--output-format {text|single-line-json|multi-line-json}
Description | The format to use for the output generated by this tool. A value of 'text' (which is the default) indicates that the tool should generate human-readable output. A value of 'single-line-json' indicates that the tool should generate JSON-formatted output with each object represented as a single line. A value of 'multi-line-json' indicates that the tool should generate JSON-formatted output with each object formatted across multiple lines, with a separate line per value |
Default Value | text |
Required | No |
Multi-Valued | No |
--suppress-comments
Description | Suppress comments that would otherwise be included in tool output |
--interactive
Description | Launch the tool in interactive mode. |
--outputFile {path}
Description | Write all standard output and standard error messages to the specified file instead of to the console. |
Required | No |
Multi-Valued | No |
--appendToOutputFile
Description | Indicates that the tool should append to the file specified by the --outputFile argument if it already exists. If this argument is not provided and the output file already exists, it will be overwritten. |
--teeOutput
Description | Write all standard output and standard error messages to the console as well as to the specified output file. The --outputFile argument must also be provided. |
--help-subcommands
Description | Display the names and descriptions of the supported subcommands. |
--propertiesFilePath {path}
Description | The path to a properties file used to specify default values for arguments not supplied on the command line. |
Required | No |
Multi-Valued | No |
--generatePropertiesFile {path}
Description | Write an empty properties file that may be used to specify default values for arguments. |
Required | No |
Multi-Valued | No |
--noPropertiesFile
Description | Do not obtain any argument values from a properties file. |
--suppressPropertiesFileComment
Description | Suppress output listing the arguments obtained from a properties file. |