Kylexlau's Weblog

现代Unix命令行

近些年来有一些开源的现代命令行工具,主要用于取代同样或者类似功能的传统工具,也出现了一些新型的命令行工具。这些工具的共性是大部分是用rust语言编写的。我主是基于Mac OS下在使用这些工具。

终端

Alacritty 可以取代 iTerm2,Zellij 可以取代 tmuxscreenfish可以取代 zshbash,Fish官网声称它是90后年轻人的shell,fish 自然要搭配 oh-my-fish 使用才行。

brew install --cask alacritty
brew install fish zellij 

编辑器

Neovim 可取代 vivim,需要配套安装 Lazyvim,才能更好发挥它的作用。我还是 Emacs 的用户,不过这算是图形界面的工具了,很少会在命令行下使用它,而 nvim 则基本都是在终端下启动和使用的。

brew install nvim
git clone https://github.com/LazyVim/starter ~/.config/nvim

文档

tldrcheat 目标都是用简短的命令行示例取代冗长manpages文档。两者对比而言,tldr 内容十分丰富,社区贡献活跃,比 cheat 好用很多。

现代版

常见命令行工具的现代版,一般是用rustgo语言重写的加强版,大部分用的rust语言:

新工具

以下这些项目的目的不是替换传统的旧工具,而是新类型的命令行工具。

  • jq: sed for JSON
  • fzf: fuzzy finder
  • delta: syntax-highlighting pager (git-delta)
  • atuin: magical shell history
  • moreutils: 一系列的新工具。其中vidir非常好用,使用文本编辑器 进行批量重命名文件和删除文件等操作。
  • lazygit, lazydocker: TUI for git and docker

参考