Skip to main content

Allows head or tail of a file on s3 without downloading the whole file

Project description

mous3

A python utility that allows you to print a number of bytes from either the beginning or end of an object stored on AWS S3 without downloading the entire file.

Features

  • AWS Profile Support: Optionally specify an AWS profile to use for accessing the S3 bucket, making it easier to work with multiple AWS accounts or configurations.

  • Flexible Byte Range: Customize the number of bytes you want to read from the end of the object.

Requirements

  • Python 3.6+
  • Boto3

Installation

  • pip install mous3

  • Your AWS credentials will need to be stored in ~/.aws/credentials or set as environment variables (AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY).

Usage

mous3 [-h] [--bytes BYTES] [--profile PROFILE] {direction} {bucket_name} {key}

Positional arguments:

direction The direction to read from the object. Can be "head" or "tail".

bucket_name The name of the S3 bucket.

key The key of the object in the S3 bucket.

Optional arguments:

-h, --help show this help message and exit

--bytes BYTES Number of bytes to download. Default is 1000. You do not need to specify positive or negative, as this is determined by the "direction" argument.

--profile PROFILE The AWS profile to use. Optional.

Examples:

  • To print the first 1000 bytes (head) of an object using the AWS profile named myProfile:
    • mous3 head my-bucket example.log --profile myProfile
  • To print the last 1000 bytes (tail) of an object named example.log in the bucket my-bucket:
    • mous3 tail my-bucket example.log
  • To print the last 200 bytes of the object:
    • mous3 tail my-bucket example.log --bytes 200

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mous3-0.1.2.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

mous3-0.1.2-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file mous3-0.1.2.tar.gz.

File metadata

  • Download URL: mous3-0.1.2.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.1

File hashes

Hashes for mous3-0.1.2.tar.gz
Algorithm Hash digest
SHA256 df975451d766f163c4667261fa333900a302dc68f5ec9d1ed74701421ad31c1d
MD5 57677ea43275f55fb981dca2ce1961c0
BLAKE2b-256 9b6e17ffd3d7a57975952439228c3f666da85638a6125ee4fdb47f0b7ed1e879

See more details on using hashes here.

File details

Details for the file mous3-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: mous3-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.1

File hashes

Hashes for mous3-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7b6985e50f5c3f7d966ce6b4e4d6b11241c602a8552fea52923ef70255c17188
MD5 d418c3023ba96532eef5b7b04e85eefb
BLAKE2b-256 c6710c13e37b5cf99e02586238f0e8ac660323dd611ea6164d86d0dfff82ba78

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page