функции - печать или удаление функций
Синтаксис
functions [-a | --all] [-n | --names] functions [-D | --details] [-v] FUNCTION functions -c OLDNAME NEWNAME functions -d DESCRIPTION FUNCTION functions [-e | -q] FUNCTION ...
Описание
functions печатает или удаляет функции.
Доступны следующие опции:
- -a или --all
-
Выводит список всех функций, включая те, имена которых начинаются с подчёркивания.
- -c или --copy OLDNAME NEWNAME
-
Создаёт новую функцию с именем NEWNAME, используя определение функции OLDNAME.
- -d или --description DESCRIPTION
-
Изменяет описание этой функции.
- -e или --erase
-
Приводит к удалению указанных функций. Это также означает, что функция не будет автоматически загружаться в текущем сеансе. Используйте funcsave, чтобы удалить сохранённую копию.
- -D или --details
-
Отправляет имя пути, где определена или может быть загружена указанная функция,
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если функция не определена или у неё нет описания.
Не следует предполагать, что будет выведено только пять строк, так как в будущем мы можем добавить дополнительную информацию в вывод.
- --no-details
-
Отключает вывод пути к функции, поэтому будет выведено только определение.
- -n или --names
-
Выводит имена всех определённых функций.
- -q или --query
-
Проверяет, существуют ли указанные функции.
- -v или --verbose
-
Делает некоторые выводы более подробными.
- -H или --handlers
-
Показывает все обработчики событий.
- -t или --handlers-type TYPE
-
Показывает все обработчики событий, соответствующие заданному TYPE.
- -h или --help
-
Отображает справку по использованию этой команды.
По умолчанию functions, если она вызвана без аргументов, выводит имена всех определённых функций. Если не задана опция -a, в выходные данные не включаются функции, имена которых начинаются с подчёркивания.
Если заданы какие-либо параметры, не являющиеся опциями, выводится определение указанных функций.
Копирование функции с помощью -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``
См. также
Для более подробного объяснения того, как функции вписываются в fish, см. Функции.
© 2005-2009 Axel Liljencrantz, 2009-2023 fish-shell contributors
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.7/cmds/functions.html