Spec-Zone.ru › Fish 3.2

функции - функции печати или удаления

Синопсис

functions [ -a | --all ] [ -n | --names ]
functions [ -D | --details ] [ -v ] FUNCTION
functions -c OLDNAME NEWNAME
functions -d DESCRIPTION FUNCTION
functions [ -e | -q ] FUNCTIONS...

Описание

functions печатает или удаляет функции.

Доступны следующие параметры:

  • -a или --all отображает все функции, даже те, имена которых начинаются с подчёркивания.
  • -c OLDNAME NEWNAME или --copy OLDNAME NEWNAME создаёт новую функцию с именем NEWNAME, используя определение функции OLDNAME.
  • -d DESCRIPTION или --description=DESCRIPTION изменяет описание этой функции.
  • -e или --erase приводит к удалению указанных функций. Это также означает, что функция запрещена для автозагрузки.
  • -D или --details сообщает имя пути, где определена или могла бы быть загружена указанная функция, stdin если функция была определена интерактивно или в командной строке или путём чтения stdin, - если функция была создана через source, и n/a если функция недоступна. (Функции, созданные через alias, вернут -, потому что alias использует source внутри). Если также указан параметр --verbose, то выводятся пять строк:

    • путь, как описано выше,
    • autoloaded, not-autoloaded или n/a,
    • номер строки в файле или ноль, если не применимо,
    • scope-shadowing если функция затеняет переменные в вызывающей функции (обычный случай, если она не была определена с помощью --no-scope-shadowing), иначе no-scope-shadowing, или n/a если функция не определена,
    • описание функции, минимально экранированное, чтобы быть одной строкой, или n/a если функция не определена.

Не следует предполагать, что будет выведено только пять строк, так как в будущем мы можем добавить дополнительную информацию в вывод.

  • -n или --names перечисляет имена всех определённых функций.
  • -q или --query проверяет, существуют ли указанные функции.
  • -v или --verbose сделает вывод более подробным.
  • -H или --handlers отобразит все обработчики событий.
  • -t или --handlers-type TYPE отобразит все обработчики событий, соответствующие заданному типу.

По умолчанию functions, при вызове без аргументов, печатает имена всех определённых функций. Если не указан параметр -a, в вывод не включаются функции, начинающиеся с подчёркивания.

Если указаны какие-либо параметры, не являющиеся опциями, выводится определение указанных функций.

Автоматически загруженные функции не могут быть удалены с помощью functions -e. Для удаления автозагруженных функций удалите файл определения или измените переменную $fish_function_path.

Копирование функции с помощью -c копирует только тело функции и не прикрепляет никакие уведомления о событиях от исходной функции.

В одном вызове functions -d можно изменить описание только одной функции.

Кодовое значение выхода functions равно количеству указанных в аргументах функций, которые не существуют. Это значение может быть использовано совместно с параметром -q.

Примеры

functions -n
# Displays a list of currently-defined functions

functions -c foo bar
# Copies the 'foo' function to a new function called 'bar'

functions -e bar
# Erases the function ``bar``

© 2020 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.2/cmds/functions.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API