¿Cómo elimino / elimino una función de shell?


Respuestas:


271
unset -f z

Desarmará la función llamada z. Un par de personas han respondido con:

unset z

pero si tiene una función y una variable llamada z, solo la variable se desarmará, no la función.


Tenga en cuenta que esto se aplica a los shells compatibles con POSIX , no solo a Bash.
Franklin Yu

2

En zsh:

unfunction z

Ese es otro nombre (posiblemente mejor) para unhash -f zo unset -f zy es consistente con el resto de la familia de:

  • unset
  • unhash
  • unalias
  • unlimit
  • unsetopt

Cuando tenga dudas con estas cosas, escriba un<tab>para ver la lista completa.

(Algo relacionado: También es bueno tener funciones / alias como realiases, refunctions, resetopts, reenv, etc para "RE- source" archivos respectivos, si se ha separado / los agrupó como tal.)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.