#s3 #aws #amazon-s3 #命令行工具 #cargo-install

app s3lsio

S3lsio 是一个用于 AWS S3 操作的命令行工具。它支持 V2 和 V4 签名。它还对 S3 进行基准测试。它可以用在脚本中,可以从其他应用程序中调用,或者用于 cron 等。它由 JSON 驱动,可以以 JSON 格式返回数据。它还可以用于保持存储桶的同步。对于那些熟悉 Ceph 的人来说,它还执行 Ceph RGW 管理功能。安装:[使用 Cargo 安装 s3lsio] 或者在 http://www.lambdastack.io/s3lsio 下载。如需帮助,请运行 cli:[s3lsio -h]

7 个版本

使用旧的 Rust 2015

0.1.21 2017 年 1 月 5 日
0.1.16 2016 年 11 月 21 日
0.1.9 2016 年 10 月 28 日
0.1.4 2016 年 9 月 21 日

#199性能分析

每月 36 次下载

Apache-2.0

695KB
4K SLoC

包含 (WOFF 字体,120KB) docs/Heuristica-Italic.woff,(WOFF 字体,90KB) docs/FiraSans-Medium.woff,(WOFF 字体,92KB) docs/FiraSans-Regular.woff,(WOFF 字体,56KB) docs/SourceCodePro-Regular.woff,(WOFF 字体,56KB) docs/SourceCodePro-Semibold.woff,(WOFF 字体,49KB) docs/SourceSerifPro-Bold.woff 和更多

S3lsio

s3lsio Crates.io Crates.io

克隆和提交 PR

git clone --recursive https://github.com/lambdastackio/s3lsio.git

请使用上述命令代替正常的 git clone ...,因为有一个用于 MacOS 包管理器 Homebrew 的子模块。但是,如果您不关心这一点,则可以简单地取消 --recursive,并正常使用 git clone。

安装

如果您只想安装 s3lsio,请从下面的环境中选择

OSX (Homebrew)

下面的 brew tap 命令非常重要,用于设置 Homebrew 将在何处查找软件包和更新。

brew tap lambdastackio/tap

brew install s3lsio

Linux RPMs - (将 0.1.18 替换为最新版本)

wget https://s3.amazonaws.com/s3lsio/osx/s3lsio-0.1.18.tar.gz

tar -xzvf s3lsio-0.1.18.tar.gz

sudo rpm -Uvh s3lsio-0.1.18.rpm

如果您已安装 Rust 并想使用 cargo

使用 cargo 安装 s3lsio

安装 Rust(如有需要):(Linux 和 Mac) curl -sSf https://static.rust-lang.org/rustup.sh | sh (Windows) 官方 Rust 下载页面链接: https://www.rust-lang.net.cn/en-US/downloads.html

关于

使用 Rust 编写的 AWS S3 命令行工具。兼容 V2 和 V4 签名。当与实现 S3 接口(如 Ceph)的第三方系统协同工作时,这一点非常重要。Ceph Hammer 及以下版本使用 V2,而 Jewel 及以上版本使用 V4。

设计

尽可能简单,但足够灵活,可用于 cron 作业、日常工具使用、脚本等。即将推出其他 AWS 类型存储选项。

打包

Deb/RPM - EVR (Epoch.Version.Release) - 遵循语义版本控制,这是现在标准。目前,您必须在包、Cargo.toml 和 CLI 上维护版本信息,这很痛苦,因为您经常会忘记适当地更新这些信息。CLI 现在从 toml 文件中读取,但其他不是。因此,将很快开始一个 build.rs 处理过程,以在构建开始之前动态更新这些信息,以保持一切同步。

MacOS:存在一个指向 lambdastackio 中的 homebrew-tap 仓库的 git 子模块。这将创建一个更新后的 tarball,Homebrew 使用它来安装和更新包。

Linux (RHEL/CentOS/Fedora):存在一个 Vagrantfile,可以动态下载 VirtualBox 实例,并启动正确的操作系统来下载 GitHub 代码,安装 Rust,构建代码,构建 rpm 并将它们推送到 S3。

Linux Ubuntu:存在一个 Vagrantfile,可以动态下载 VirtualBox 实例,并启动正确的操作系统来下载 GitHub 代码,安装 Rust,构建代码,构建 deb 并将它们推送到 S3。

上述过程可能很快会转移到 Docker 上。

注意。一旦此过程完全确定,它将作为模板过程推广到所有二进制包。我可能还会自动生成用于 Windows MinGW-64bit 的 Pacman 包文件。

变更

正在快速发生许多变更。今天可能不存在的内容明天可能就会存在。

依赖项

~17MB
~319K SLoC