4 Great Cli Tools Written in Rust

随着 Rust 生态越来越繁盛,使用 Rust 实现的小工具越来越多,下面推荐4个我试用后觉得不错的工具

starship

starship 是一个类似于 oh-my-zsh 的美化工具,而且它还支持 bash 和 fish。

它的特性很多,但我最喜欢的是可定制化且信息丰富的 Git 分支和工作区信息,当前工作区项目版本信息和后台任务提示。 想了解更多特性可以参考 文档

它的安装和配置也非常简单。

首先需要安装一款 Powerline 字体,用过 oh-my-zsh 的应该都安装了,如果没有,可以试试 Fira Code

接着安装 starship。在 Mac 上可以使用 Homebrew

brew install starship

如果机器上安装了 Rust 1.33+ 也可以通过 cargo install 安装。

# 需要 pkg-config 和 libssl-dev
sudo apt install -y pkg-config libssl-dev

cargo install starship

也可以直接下载编译好的文件

curl -L https://github.com/starship/starship/releases/download/v0.13.1/starship-v0.13.1-x86_64-unknown-linux-gnu.tar.gz -o /tmp/starship.tar.gz

cd /tmp && tar zxvf /tmp/starship.tar.gz

mv x86_64-unknown-linux-gnu/starship /usr/local/bin/starship

接着在 .zshrc 添加如下内容

eval $(starship init zsh)

starship 的配置文件默认为 ~/.config/starship.toml ,我的示例配置文件如下:

add_newline = false

[package]
disabled = true

[character]
symbol = "➜"
error_symbol = "✗"
use_symbol_for_status = true

[git_branch]
symbol = ":seedling: "

[golang]
symbol = "G "

[line_break]
disabled = true

[python]
pyenv_version_name = false
pyenv_prefix = "foo "

[rust]
symbol = "⚙️ "

完整配置项解读参考 starship configuration

bat

bat 是 cat 命令的替代品,虽然是 cat 这样简单命令的替换,但 bat 在 Github 项目上的 star 已经 15,009 了,可见大家对 bat 的喜爱。

相比于 cat, bat 添加了语法高亮和 Git 集成等诸多特性。而且也有详细的 中文文档 。 如何安装和使用我就不再赘述,仅放一张 gif 作为参考。

ffsend

火狐公司推出了一项免费的阅后即焚加密文件共享服务 firefox send ,你可以上传文件,设置文件保存时间和可被下载次数,然后将文件下载 链接分享给别人以分享文件。最大上传2.5G大小的文件,在分享小文件但又不想被百度云限速时很有用。

ffsend 是使用 firefox send 服务的命令行工具。通过它可以在命令行中完成文件上传和下载。

目前 ffsend 还在 alpha 阶段,下载方式有限,最简单的方式就是

cargo install ffsend

其他安装方式可以参考 ffsend 的文档。

ffsend 的用法也很简单

# 上传文件
ffsend upload my-file.txt
https://send.firefox.com/#sample-share-url

# 更多上传参数设置
# - 最多下载20次
# - 输入密码来加密上传的文件
# - 上传前归档文件
# - 将分享链接复制到剪切板
# - 在浏览器中打开分享链接
$ ffsend upload --downloads 20 --password --archive --copy --open my-file.txt
Password: ******
https://send.firefox.com/#sample-share-url

procs

procsps 命令的替代品。相比于 ps 繁多的参数选项,procs 相对简单,信息展现更加直观,而且添加了语法高亮。

安装方法如下:

# homebrew
sudo brew install procs

# cargo 安装
cargo install procs

不带参数的 procs 命令会展示所有进程。

procs

如果要显示某个用户的所有进程也很简单

procs rookie

更多更复杂的用法可以在项目的 README 中找到,这里不再赘述。

我来评几句
登录后评论

已发表评论数()

相关站点

+订阅
热门文章