
Recientemente actualicé mi bash (Mac OS X 10.6.8) de 3.2.48(1) a 4.3.30(1) mediante macports y, aunque la instalación parece haberse realizado sin problemas, los dos puntos en mi ~/.bashrc donde Parecía export -f myfunc;
producir algunos resultados inesperados. Varias cosas, incluidas man
y more
, dan el siguiente error:
/bin/sh: line 6: 'BASH_FUNC_myfunc%%': not a valid identifier
Había dos funciones definidas en ~/.bashrc que solían export -f
permitir que otro script llamara a esa función; el error se referirá al primero presente en ~/.bashrc, no tengo idea de dónde viene el número de línea. Los scripts secundarios funcionan normalmente y al eliminar export
el -f
indicador se elimina el error, pero claramente resulta en que los scripts no puedan llamar a la función.
¿Qué está causando este comportamiento y cómo puedo exportar mis funciones correctamente en bash 4?