Введение
Это документация для fish, дружественного интерактивного оболочки.
Оболочка — это программа, которая помогает вам управлять компьютером, запуская другие программы. fish предоставляет командную строку, ориентированную на удобство и интерактивное использование.
Некоторые из специальных функций fish:
- Расширенный интерфейс пользователя: Выделение синтаксиса, Автодополнение, вставка по табу и списки выбора, которые можно просматривать и фильтровать.
- Не требуется настройка: fish разработан для мгновенного использования без необходимости сложной настройки.
- Легкое программирование: Новые функции могут быть добавлены на ходу. Синтаксис легко изучить и использовать.
На этой странице объясняется, как установить и настроить fish и где получить дополнительную информацию.
Куда обратиться?
Если вы впервые используете fish, ознакомьтесь с учебником.
Если вы уже знакомы с другими оболочками, такими как bash, и хотите увидеть различия в программировании, ознакомьтесь со статьей Fish для пользователей Bash.
Для получения всестороннего обзора языка программирования fish см. Язык программирования Fish.
Для получения информации об интерактивном использовании fish см. Интерактивное использование.
Если вам нужно сначала установить fish, продолжайте чтение, в остальной части документации описано, как получить, установить и настроить fish.
Установка
В этом разделе описывается, как установить, удалить, запустить и выйти из fish. Также объясняется, как сделать fish стандартной оболочкой.
Установка
Актуальные инструкции по установке последней версии fish находятся на домашней странице fish.
Чтобы установить разработочную версию fish, см. инструкции на странице проекта на GitHub.
Запуск и выход
После установки fish откройте терминал. Если fish не является стандартной оболочкой:
-
Введите fish, чтобы запустить оболочку:
> fish
-
Введите exit, чтобы завершить сеанс:
> exit
Стандартная оболочка
Существует несколько способов переключения на fish (или любую другую оболочку) в качестве стандартной.
Проще всего настроить ваш терминал на запуск fish. Посмотрите его конфигурацию и установите программу для запуска в /usr/local/bin/fish (если fish установлен там — замените другой путь, если необходимо).
Более сложный и полный способ — установить fish в качестве оболочки входа. Для этого необходимо:
-
Добавить оболочку в
/etc/shellsс помощью:> echo /usr/local/bin/fish | sudo tee -a /etc/shells
-
Изменить стандартную оболочку с помощью:
> chsh -s /usr/local/bin/fish
Опять же, замените путь к fish на /usr/local/bin/fish — см. command -s fish внутри fish. Чтобы изменить её на другую оболочку, просто замените /usr/local/bin/fish на /bin/bash, /bin/tcsh или /bin/zsh соответственно в шагах выше.
Предупреждение
Установка fish в качестве оболочки входа может привести к проблемам, так как некоторые операционные системы (включая множество дистрибутивов Linux) выполняют некоторые настройки только в файлах запуска оболочки, таких как /etc/profile. Поэтому вы можете заметить, например, что $PATH неверен, и вам придётся перенастроить эту конфигурацию.
Удаление
Для удаления fish: см. FAQ: Удаление fish.
Строка shebang
Поскольку скрипты оболочки написаны на разных языках, им нужна информация о том, какой интерпретатор следует использовать для их выполнения. Для этого от них ожидается наличие первой строки — строки shebang, в которой указан исполняемый файл интерпретатора.
Скрипт, написанный на bash, потребовал бы первую строку такого вида:
#!/bin/bash
Когда оболочка сообщает ядру о выполнении файла, она будет использовать интерпретатор /bin/bash.
Для скрипта, написанного на другом языке, просто замените /bin/bash на интерпретатор для этого языка (например: /usr/bin/python для скрипта Python или /usr/local/bin/fish для скрипта fish).
Эта строка необходима только тогда, когда скрипты выполняются без указания интерпретатора. Для функций внутри fish или при выполнении скрипта с fish /path/to/script, shebang не требуется (но не помешает!).
Конфигурация
Для хранения конфигурации запишите её в файл, названный ~/.config/fish/config.fish.
.fish скрипты в ~/.config/fish/conf.d/ также автоматически выполняются перед config.fish.
Эти файлы считываются при запуске каждой оболочки, будь то интерактивные или оболочки входа. Используйте status --is-interactive и status --is-login для выполнения действий только в интерактивных/оболочках входа соответственно.
Это краткое изложение; для полного объяснения, например, для системных администраторов или интеграции разработчиков другого программного обеспечения, см. Конфигурационные файлы.
Примеры:
Чтобы добавить ~/linux/bin в переменную PATH при использовании оболочки входа, добавьте это в файл ~/.config/fish/config.fish:
if status --is-login
set -gx PATH $PATH ~/linux/bin
end
Это всего лишь пример; использование fish_add_path, например, fish_add_path ~/linux/bin (что добавляет путь только в том случае, если он ещё не включён), проще.
Чтобы запускать команды при выходе, используйте обработчик событий, который срабатывает при выходе из оболочки:
function on_exit --on-event fish_exit
echo fish is now exiting
end
Ресурсы
- Страница GitHub
- Официальный канал Gitter
- Официальный список рассылки по адресу fish-users@lists.sourceforge.net
Если вы хотите внести улучшение в fish, вы можете отправить его через страницу GitHub.
Другие страницы справки
- Введение
- Часто задаваемые вопросы
- Интерактивное использование
- Язык программирования Fish
- Команды
- Fish для пользователей Bash
- Учебник
- Написание собственных дополнений
- Архитектура
- Примечания к релизу
- Лицензия
© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.4/index.html