Fish Shell 是什么?
Fish,全称 “Friendly Interactive Shell”(友好交互式 Shell),是一款旨在实现智能和用户友好的现代命令行 shell。与其他需要大量配置才能高效使用的 shell 不同,Fish 开箱即用。它提供了强大的功能,如语法高亮、自动建议和 Tab 补全,这些功能无需任何设置即可工作。它旨在让命令行对新手和经验丰富的用户都更加强大、易于发现和直观。
主要功能
- 自动建议: Fish 会根据你的历史记录和补全项,在你输入时建议命令,你可以按右箭头键接受。
- 合理的脚本编写: 它具有比 Bash 更简单、更清晰、更一致的脚本语言,避免了许多常见的陷阱和令人困惑的语法。
- Man 手册页补全: Fish 通过解析命令的 man 手册页自动生成补全项,为大量工具提供有用的建议。
- VGA 颜色: 它支持 24 位真彩色,允许精美的主题和高亮显示的终端会话。
- 基于 Web 的配置: 你可以通过运行
fish_config使用 Web 界面来设置颜色、提示符和其他设置。 - 华丽的语法高亮: 无效的命令会以红色高亮显示,在你按下回车键之前就防止了常见错误。
使用场景
- 日常主力: 许多开发者使用 Fish 作为他们的主要登录 shell,因为它能提高生产力。
- 系统管理: 其清晰的脚本语言使其成为编写维护和自动化脚本的绝佳选择。
- 学习命令行: Fish 的交互性和乐于助人的特性使其成为终端新手的优秀工具。
- 复杂脚本编写: 对于需要比传统 shell 更强大的错误处理和更清晰语法的任务,Fish 是一个强大的替代品。
入门指南
开始使用 Fish 非常简单。首先,使用你系统的包管理器安装它。
在 macOS 上 (使用 Homebrew): ```shell brew install fish
在 Ubuntu/Debian 上: ```shell sudo apt-add-repository ppa:fish-shell/release-3 sudo apt-get update sudo apt-get install fish
安装后,只需在你当前的终端中输入 fish 即可开始一个新的会话。
这是一个 Fish 脚本的 “Hello World” 示例。创建一个名为 hello.fish 的文件:
```fish #!/usr/bin/env fish
function say_hello echo “你好,世界!欢迎来到 Fish shell。” end
say_hello
使其可执行并运行它: ```shell chmod +x hello.fish ./hello.fish
定价
Fish 是完全免费和开源的,在 GNU 通用公共许可证第 2 版 (GPLv2) 下分发。