unset -f $FUNCTION_NAME
bash/zshで単一の関数の設定を解除するには、すべての関数の設定を解除するにはどうすればよいですか?
zsh
シェルでは、disableすべての関数を使用して
disable -f -m '*'
(文字通り、「名前が*
に一致する各関数を無効にする」)。
その後、類似のenable
呼び出しでそれらを再度有効にすることができます。
同様の方法でunset
を使用して、現在の環境から関数を完全に削除することもできます。
unset -f -m '*'
連想配列 functions
には、定義されたすべての関数(オートローディングスタブを含む)が含まれているため、 ${(k)functions}
は、定義された名前のリストに展開されます関数。
unset -f ${(k)functions}