长期在服务器上做模拟和数据处理,会发现效率不只取决于 CPU、内存和并行核数,还取决于你能不能快速找到文件、看懂日志、比较结果、监控资源。
这篇整理一下我在科研服务器上常用的一些 Linux 小工具。它们大多可以通过 conda、系统包管理器或 cargo 安装,用起来比传统命令更顺手。
这不是“必须安装清单”,而是适合科研服务器工作流的效率工具清单。核心目标是:找文件更快,看日志更舒服,排查问题更直观。
1. eza:更好看的 ls
eza 可以理解为 ls 的现代替代品,颜色、图标、文件信息都更清晰。

常用命令:
ezaeza -laheza --tree -L 2
适合用来看项目目录结构,尤其是模型输出目录、脚本目录、实验目录。
2. autojump / zoxide:快速跳转路径
服务器路径层级经常很深,比如:
/WORK/user/project/cmaq/2020_case/CCTM/scripts
autojump 和 zoxide 可以根据访问历史快速跳转目录。

例如:
如果你经常在多个项目、多个模式目录之间切换,这类工具能明显减少 cd ../../.. 的次数。
3. fzf:模糊搜索文件
fzf 是交互式模糊搜索工具,可以用来找文件、找历史命令、筛选结果。

常见用法:
find . -type f | fzfhistory | fzf
配合 bat 预览文件更好用:
alias fzf='fzf --preview "bat --color=always --style=numbers --line-range=:500 {}"'

4. colordiff:更清楚地比较文件
模型配置经常要比较两个 namelist.input、两个脚本或两个 Registry 文件。
colordiff 会给 diff 结果加颜色。

colordiff file1 file2diff -u file1 file2 | colordiff
5. btop:系统资源监控
btop 可以直观看到 CPU、内存、进程、磁盘和网络状态。

适合检查:
6. yazi:交互式文件管理器
yazi 是终端里的文件管理器,适合浏览目录、预览文件、快速移动和删除。


如果你习惯图形界面的文件管理器,但又必须在服务器终端里工作,可以试试它。
7. ripgrep:快速搜索文件内容
ripgrep 命令是 rg,可以看作更快、更现代的 grep。

例如在项目里查某个变量:
rg "chem_opt"rg "auxhist13" .rg -n "GRID_NAME" CCTM/scripts
查模式脚本、配置文件、报错日志时,rg 通常比 grep -R 更快、更舒服。
8. dust / ncdu:磁盘空间分析
模式输出文件很容易把磁盘占满。dust 可以更直观地看目录占用。

类似工具还有 ncdu,适合交互式清理大文件。
9. tmux:多窗口协作和断线保护
tmux 是服务器工作流里的核心工具之一。

它最重要的作用不是“分屏”,而是:
常用命令:
tmux new -s worktmux attach -t worktmux ls
10. bat:更好看的 cat
bat 是 cat 的增强版,支持语法高亮和行号。

bat namelist.inputbat run_cctm.csh
还可以替代 tail -f 查看日志:
batfollow() {if [[ $# -lt 1 ]]; thenecho"Usage: batfollow <file> [bat-language]" >&2return 1filocal file="$1"local lang="$2"if [[ -n $lang ]]; thentail -f -- "$file" | bat --paging=never -l "$lang"elsetail -f -- "$file" | bat --paging=never --file-name "$file"fi}
效果类似:

11. starship:更美观的命令行提示符
starship 可以让 shell 提示符显示 Git 分支、Python 环境、当前目录等信息。

它对 zsh/fish 等 shell 支持较好。如果服务器默认是 bash,配置体验可能不如 zsh。
总结
如果只选最推荐的几个,我会按这个顺序装:
这些工具不改变科研问题本身,但能显著减少重复劳动。对长期在服务器上跑 WRF、CMAQ、WRF-Chem 或机器学习实验的人来说,很值得配置一次。