Como desativo todas as funções no zsh?

Como desativo todas as funções no zsh?

Eu sei que posso usar unset -f $FUNCTION_NAMEpara desabilitar uma única função no bash/zsh, mas como faço para desabilitar todas as funções?

Responder1

Na zshcasca, você podedesabilitartodas as funções usando

disable -f -m '*'

(literalmente, "desative cada função cujo nome corresponda *").

Você pode então habilitá-los novamente com a enablechamada análoga.

Você também pode usar unsetuma maneira semelhante para remover completamente as funções do ambiente atual:

unset -f -m '*'

Responder2

A matriz associativafunctionscontém todas as funções definidas (incluindo stubs de carregamento automático), então${(k)functions}expande para a lista de nomes de funções definidas.

unset -f ${(k)functions}

informação relacionada