Fish Shell Cheatsheet - Shell Config
用户友好的 Fish Shell 命令都在这里了,语法更简洁,自动补全开箱即用,按场景分类整理,快速上手。
Back to SysOps变量与作用域 7
set name "John"设置变量
echo $name使用变量
set -x PATH /usr/local/bin $PATH设置环境变量(导出)
set -U fish_user_paths /usr/local/bin $fish_user_paths设置通用变量(持久化)
set -l local_var "value"局部变量(仅当前函数)
set -g global_var "value"全局变量
set -e name删除变量
流程控制 5
if test -f file.txt\n echo "exists"\nend条件判断(文件存在)
if test $count -gt 5\n echo "many"\nelse\n echo "few"\nendif-else 分支
for file in *.txt\n echo $file\nend遍历文件
while read -l line\n echo $line\nend < file.txt逐行读取文件
switch $status\n case 0\n echo "success"\n case "*"\n echo "failed"\nend多分支判断
函数与别名 7
function greet\n echo "Hello $argv"\nend定义函数,$argv 接收参数
funcsave greet保存函数到配置文件
functions列出所有函数
functions greet查看指定函数定义
alias cls="clear"创建别名
abbr -a gco "git checkout"创建命令缩写(输入后自动展开)
funced greet交互式编辑函数
字符串与管道 6
string length "hello"获取字符串长度
string split "," "a,b,c"按分隔符分割字符串
string join ";" "a" "b" "c"用分隔符连接字符串
string replace "old" "new" "hello old"替换字符串
string match -r "^\d+" "123abc"正则匹配
echo "data" | string upper管道转大写
配置与主题 6
fish_configWeb 界面配置主题和提示符
fish_config theme choose Nord命令行切换主题
set -U fish_greeting ""取消欢迎语
fish_update_completions更新补全脚本
cat ~/.config/fish/config.fish查看配置文件
fisher install jorgebucaran/autopair.fish用 fisher 安装插件
命令历史与快捷键 5
history查看命令历史
history search "git"搜索历史命令
history delete "rm -rf"删除指定历史记录
Ctrl+R增量搜索历史命令
Alt+← / Alt+→按单词移动光标
💡 Tips
- Fish 的 if/for/function/switch 用 end 结尾,不需要 fi/done/esac。
- set -U 设置通用变量,持久化到配置文件,所有 Fish 会话共享。
- Fish 开箱即用自动补全,按 Tab 即可,按 Alt+→ 接受建议。
- fisher 是 Fish 的插件管理器:curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source && fisher install jorgebucaran/fisher。
- abbr 比 alias 更轻量,输入缩写后按空格会自动展开为完整命令。
- Fish 不兼容 POSIX Shell 语法,不能直接用 bash 脚本,但语法更直观。