Hace poco quería desinstalarlo nvmy reinstalarlo por completo , y deshacerme de cualquiera de sus entornos. Resulta que deshacerse de él no parece ser porque gran nvmparte se implementa en parte como una gran cantidad de funciones de shell que se obtienen en su shell a través de .bash_profileo .bashrc, o donde haya agregado los comandos de abastecimiento que le indicó cuando lo instaló por primera vez.
Desconcertado al principio al which nvmno devolver nada pero claramente el nvmcomando y otros aún se encontraban, finalmente descubrí a través de declare -Fque se trata de un montón de funciones de shell. No quería simplemente matar el shell e iniciar uno nuevo (por razones no relevantes aquí), así que borré las nvmfunciones de ese shell con esto:
for F in `declare -F | grep -e nvm | cut -f 3 -d\ `; do unset -f $F; done
Algunas variaciones al respecto pueden ser útiles para alguien que, por cualquier razón, quiere hacer algo similar y no puede reiniciar un nuevo shell o no quiere hacerlo.
unfunctionsería un buen nombre para un comando :-)