我已经这样做了:
$ z() { echo 'hello world'; }
我该如何摆脱它?
unset -f z
将取消设置名为 z 的函数。几个人的回答是:
unset z
但是如果您有一个函数和一个名为 z 的变量,则只有该变量将被取消设置,而不是该函数。
在 Zsh 中:
unfunction z
unhash -f z
这是or的另一个(可以说是更好的)名称,unset -f z
并且与以下家族的其他成员一致:
unset
unhash
unalias
unlimit
unsetopt
如果对此类事情有疑问,请键入un<tab>
以查看完整列表。
(稍微相关:如果您已将它们分开/分组,那么使用 , , , 等函数/别名来“重新”各个realiases
文件refunctions
也resetopts
很好。reenv
)source