Fish Shell 配置与使用
fish 是交互友好的 Shell,内置自动建议、语法高亮和补全,但不兼容 POSIX。日常交互很舒服,跑 bash 脚本时要显式调用 bash。
fish
chsh -s "$(which fish)"
fish --version
fish_config
~/.config/fish/config.fish:
set -Ux EDITOR nvim
set -Ux PAGER less
fish_add_path ~/.local/bin
abbr -a gs 'git status'
abbr -a ll 'eza -lah'
fish_greeting
函数:
function mkcd
mkdir -p $argv[1]
cd $argv[1]
end
funcsave mkcd
export、$() 的某些写法、&& 旧版本都不同。set 管理;-Ux 是通用导出变量,-gx 是全局导出。#!/usr/bin/env fish,不要用 #!/bin/sh。.bashrc 里的 PATH 和别名不会自动生效;迁移要重写。fish_config 会启动 Web 界面;远程无浏览器时用命令行配置。fish — Shellbash / zsh — 其他 Shellfish_config — 配置界面