Shell/CLI
TOC
- 其他
- Shell Script Development
- 配色
- TUI
- Commands in Docker
- Builtin Commands
- Builtin Command Alternatives
- 文件管理器
- 文件重命名
- 文件查找
- 文件大小
- 进程管理
- ssh
- 终端窗口管理
其他
- terminals-are-sexy: A curated list of Terminal frameworks, plugins & resources for CLI lovers.
- https://command-not-found.com/ : 如果找不到命令,可以快速搜索到对应的安装方式。
- commando: 封装了各种命令的容器镜像
- hr: 终端分隔符
- cloc: 代码行统计
- ttyd: 将终端程序映射成 Web 服务。包括 shell 本身也可以封装成 Web 服务。
- wetty: nodejs 实现的
- shell2http: 不同点在于它把程序映射到 uri 上。
- gotty: go 实现的。无人维护。
- taskbook: 命令行 Todo List Manager
- todo.txt-cli: 备选
- tio: 连接 TTY 的工具。
- catimg: 在终端里打印图片,打印出的都是像素风格的。
- hhighlighter: 用不同颜色高亮多个匹配字符串
- fzf: 模糊筛选/搜索任意列表
- atuin: 使用 SQLite 数据库存储 shell 命令历史。可以通过 Atuin 服务器同步记录,也可单机本地离线使用。适合经常开多窗口的用户。
- cash: For windows 用户。用 nodejs 写的程序,模拟一些 linux 命令
- specsheet: 声明式检查
- pv: 显示 linux 管道数据传输速度
- progress: 显示 cp, mv, dd 等命令的进度条
Ⓜ
Ⓛ
- noti: 进程完成后,触发系统通知。
- nushell: 超级酷的 Shell
- fig: 非常酷的补全工具。支持 MacOS/Linux/Windows。
- basher: bash 包管理器
- dotbot: dotfile 管理器
- bash: 注意升级到最新版本的 bash
- bash-completion: bash 命令补全
- bash-it: Bash 脚本管理框架
- dotbot: dotfile 管理框架
- PathPicker: 「待评价」多条记录选择器。不是很好用
- starship: 漂亮且快速,功能丰富且支持自定义的 prompt。支持很多种 shell。rust 实现的。
- a-bash-prompt: 备选方案。bash 专用的 prompt。纯 bash 实现的。
- pure: zsh 专用的 prompt
- ble.sh: 让 bash 也拥有 zsh 那样的语法高亮、自动补全等功能。超强!
- bash-preexec: preexec and precmd hook functions for Bash in the style of Zsh.
- direnv: 根据当前目录自动执行命令,比如设置一些环境变量什么的,切出目录环境变量会自动变回去
- pueue: 将任意 shell 命令托管到后台队列里执行
- vhs: 声明式制作命令行演示 GIF 动图
- browsh: 运行在终端的网页浏览器
- carbonyl: 在终端运行 Chromium。
- glow: markdown 终端阅读工具
- theme.sh: shell 配色设置,动态预览
- lnav: 日志文件的终端浏览器
Shell Script Development
配色
- lscolors: LSCOLORS Preview
- trapd00r/LS_COLORS: LS_COLORS 自定义集合
- iTerm2-Color-Schemes: shell 配色
TUI
- gum: 超酷的工具
- fzf: 模糊筛选/搜索任意列表
- bat: better cat。自动代码着色,自带分页器,显示代码行,支持 diff,自动标记 git 变动,可显示不可见符号。
- aalib: 图片、视频转 ASCII art
Commands in Docker
docker pull pygmy/pgcli
https://hub.docker.com/r/pygmy/pgclidocker pull adoyle/mycli
https://hub.docker.com/r/adoyle/myclidocker run -d --name ariang -p 6080:80 leonismoe/ariang
https://hub.docker.com/r/leonismoe/ariangdocker run -ti --rm -v ${HOME}:/root -v $(pwd):/git alpine/git <git_command>
https://hub.docker.com/r/alpine/git- https://hub.docker.com/r/jlesage/firefox
- https://hub.docker.com/_/irssi
- commando: 封装了各种命令的容器镜像
Builtin Commands
系统自带且好用的命令
- https://wangchujiang.com/linux-command/ : Linux 命令解释搜索工具
- sar: linux 命令,查看系统状态
- stat: 查看文件状态,比 ls 更详细,并且能指定输出哪些状态
- file: 查看文件类型。详见
- md5: 计算 md5。详见
- cksum: crc32 算法
- shasum: sha1 算法
- 编辑:
ed
vi
vim
nano
- 阅读:
cat
more
less
- realpath: 获取文件的真实绝对路径。因为 Mac 系统没有
realpath
,可以用这个补上。
Builtin Command Alternatives
比系统自带命令更好的替代品。
当存在与系统自带命令同名的 alias 或者 function 时,比如 alias cat=ccat
,可以使用 \cat
或者 command cat
调用原命令。 详见这篇文章: https://stackoverflow.com/a/16506263/4622308
- modern-unix
- better
cd
- better
ls
- better
rm
- trash: 不直接删除文件而是移到回收站。建议
alias rm='trash'
。
- trash: 不直接删除文件而是移到回收站。建议
- better
cat
- bat: 自动代码着色,自带分页器,显示代码行,支持 diff,自动标记 git 变动,可显示不可见符号。
- better
tail
- multitail: 同时 tail 多个文件
- better
systemctl
- sysz: systemctl + fzf
- better
awk
andcut
- better
sed
- sd: 支持替换换行符(sed 的痛点)
- better
watch
- entr: 监听文件变化,执行命令
文件管理器
- ranger: Python 实现的
- nnn: C 实现的
- yazi: 待评价
- kanagawa.yazi: 主题配色
- yazi.nvim: yazi 的 nvim 插件
文件重命名
文件查找
文件大小
- better
du
- better
df
- duf: Go 实现
进程管理
- hotel: 本地进程管理服务
- alfred-hotel: 查看 hotel app 的 Alfred Workflow
- better
ps
- better
top
andhtop
- better
kill
ssh
- Mosh: 自动重连的 ssh
- EternalTerminal: 备选方案
- sshpass: 通过编程方式在 ssh 时输入用户名和密码。不安全,勿用在生产环境。
终端窗口管理
- tmux: 多终端管理器
- the-tao-of-tmux: 非常详尽的 tmux 使用和配置手册
- tpm: Tmux Plugin Manager
- tmux-menus: 很强大的菜单插件。功能固定,无法自定义。
- tmux-easy-menu: 自定义菜单
- upterm: 实时共享终端窗口到公网