| Crates.io | aspentool |
| lib.rs | aspentool |
| version | 0.1.28 |
| created_at | 2024-01-14 16:38:02.386862+00 |
| updated_at | 2024-03-28 07:42:33.75519+00 |
| description | SSH Client |
| homepage | |
| repository | https://github.com/pistachio214/aspen-toolbox |
| max_upload_size | |
| id | 1099555 |
| size | 56,277 |
本项目会使用 Rust 和 clap 4.4.12 创建一个命令行工具 aspen,先实现 ssh登录服务器和查看服务器列表 两个个功能。如果你也想实现一个自己的命令行工具,可以按照以下步骤进行:
编译项目:
cargo build --release
安装到系统:
在 Linux 或 macOS 上,你可以将编译后的可执行文件复制到 /usr/local/bin 或其他 PATH 包含的目录:
sudo cp target/release/aspen /usr/local/bin/
在 Windows 上,你可以将可执行文件复制到任何 PATH 包含的目录,或者手动添加其所在目录到系统 PATH。
一旦安装,你就可以直接在命令行中使用 aspentool,例如:
# 先选择要链接的服务器,然后登录
aspentool ssh
# 知道服务器的编号,直接登录该编号服务器
aspentool ssh 1
# 查看所有已配置的服务器列表
aspentool all
# 设置服务器配置的地址
aspentool set-path /xx/xxx/xxx.json
# 获取服务器配置的地址
aspentool get-path
但是通过复制的方法安装命令行,实在是不够 (悠亚) 优雅,必须要使用一种装逼的方式来安装。因此,下面的步骤才是命令行装逼的关键,支持cargo安装。
要使你的 aspentool 命令行工具能够通过 cargo install 安装,你需要将其发布到 crates.io,这是 Rust 的包管理仓库。在发布之前,你需要创建一个帐户并获取一个 API 令牌用于身份验证。以下是将你的工具准备并发布到 crates.io 的步骤:
在你的终端中,使用以下命令登录 Cargo:
cargo login [your_api_token]
将 [your_api_token] 替换为你在 crates.io 上的 API 令牌。
确保你的 Cargo.toml 文件包含所有必要的信息,这对于发布至 crates.io 是必要的。下面是一个示例:
[package]
name = "aspentool"
version = "0.1.0"
authors = ["Aspen Soung <songyang410@outlook.com>"]
edition = "2021"
# 以下是描述和文档链接等可选字段
description = "A useful development tool for various tasks"
license = "MIT"
[dependencies]
clap = "4.4.12"
colored = "2.1.0"
prettytable-rs = "^0.10"
ssh2 = "0.9.4"
确保更新 authors、description、documentation(如果适用),以及任何其他相关信息。
在你的项目目录中运行以下命令来发布你的包:
cargo publish
这将会把你的包上传到 crates.io。
一旦你的包被成功发布到 crates.io,其他人就可以通过运行以下命令来安装你的工具:
cargo install aspentool
安装成功之后,需要您先使用命令设置服务器配置的地址,配置文件的格式按 config.example 内容即可
aspentool set-path /xxxx/xxx/x.json
设置完成之后,就可以愉快的玩耍了 🎉🎉🎉🎉