I have done this:
$ z() { echo 'hello world'; }
How do I get rid of it?
I have done this:
$ z() { echo 'hello world'; }
How do I get rid of it?
unset -f z
Will unset the function named z. A couple people have answered with:
unset z
but if you have a function and a variable named z only the variable will be unset, not the function.
In Zsh:
unfunction z
That's another (arguably better) name for unhash -f z or unset -f z and is consistent with the rest of the family of:
unsetunhashunaliasunlimitunsetoptWhen in doubt with such things, type un<tab> to see the complete list.
(Slightly related: It's also nice to have functions/aliases like realiases, refunctions, resetopts, reenv, etc to "re-source" respective files, if you've separated/grouped them as such.)