Введение
Это документация для fish, дружественного интерактивного оболочки.
Оболочка — это программа, которая помогает вам управлять компьютером, запуская другие программы. fish предлагает интерфейс командной строки, ориентированный на удобство использования и интерактивное использование.
Некоторые из специальных функций fish:
- Расширенный пользовательский интерфейс: Подсветка синтаксиса, Автодополнение, вставка с помощью клавиши Tab и списки выбора, которые можно просматривать и фильтровать.
- Не требуется настройка: fish разработан для мгновенного использования без сложной настройки.
- Легкое создание скриптов: Новые функции могут быть добавлены на лету. Синтаксис легко изучить и использовать.
Эта страница объясняет, как установить и настроить fish и где получить больше информации.
Куда пойти?
Если вы используете fish впервые, ознакомьтесь с учебником.
Если вы уже знакомы с другими оболочками, такими как bash, и хотите увидеть различия в скриптах, ознакомьтесь с Fish для пользователей bash.
Для получения полного обзора языка скриптов fish, см. Язык Fish.
Для получения информации об интерактивном использовании fish, см. Интерактивное использование.
Если вам нужно сначала установить fish, продолжайте чтение, остальная часть документа расскажет вам, как получить, установить и настроить fish.
Установка
Этот раздел описывает, как установить, удалить, запустить и выйти из fish. Также объясняется, как сделать fish стандартной оболочкой.
Установка
Актуальные инструкции по установке последней версии fish находятся на главной странице fish.
Чтобы установить тестовую версию fish, ознакомьтесь с инструкциями на странице проекта на GitHub.
Запуск и выход
После установки fish откройте терминал. Если fish не является стандартной оболочкой:
-
Введите fish, чтобы запустить оболочку:
> fish
-
Введите exit, чтобы завершить сеанс:
> exit
Стандартная оболочка
Есть несколько способов переключиться на fish (или любую другую оболочку) в качестве стандартной.
Самый простой метод — настроить ваш эмулятор терминала (например, GNOME Terminal, Apple Terminal.app или Konsole) на прямой запуск fish. Ознакомьтесь с настройками и установите программу для запуска по адресу /usr/local/bin/fish (если там установлен fish — замените другой путь, если нужно).
Альтернативно, вы можете установить fish в качестве оболочки входа, чтобы она запускалась при всех входах в терминал, включая SSH.
Предупреждение
Установка fish в качестве оболочки входа может вызвать проблемы, такие как неправильный PATH. Некоторые операционные системы, включая ряд дистрибутивов Linux, требуют, чтобы оболочка входа была совместима с Bourne и читала конфигурацию из /etc/profile. 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: см. 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 для выполнения действий только в интерактивных/оболочках входа, соответственно.
Это краткая версия; для полного объяснения, например, для системных администраторов или интеграции для разработчиков других программного обеспечения, см. Файлы конфигурации.
Если вы хотите увидеть, что вы изменили по умолчанию в fish, см. fish_delta.
Примеры:
Чтобы добавить ~/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.
Другие страницы справки
© 2005-2009 Axel Liljencrantz, 2009-2023 fish-shell contributors
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.6/index.html