bash 4.3.30으로 업그레이드한 후 .bashrc에서 -f를 내보내면 내장 기능이 종료됩니까?

bash 4.3.30으로 업그레이드한 후 .bashrc에서 -f를 내보내면 내장 기능이 종료됩니까?

최근에 macport를 통해 bash(Mac OS X 10.6.8)를 3.2.48(1)에서 4.3.30(1)으로 업그레이드했는데 설치가 순조롭게 진행된 것 같지만 ~/.bashrc의 두 지점은 나는 export -f myfunc;예상치 못한 결과를 낳은 것 같았다. man및 를 포함한 다양한 항목에서 more다음 오류가 발생합니다.

/bin/sh: line 6: 'BASH_FUNC_myfunc%%': not a valid identifier

export -f~/.bashrc에는 다른 스크립트가 해당 함수를 호출할 수 있도록 하는 두 개의 함수가 정의되어 있습니다 . 오류는 ~/.bashrc에 있는 첫 번째 오류를 참조합니다. 줄 번호가 어디에서 왔는지 모르겠습니다. 보조 스크립트는 정상적으로 작동하며 플래그를 제거 export하거나 -f플래그를 지정하면 오류가 제거되지만 분명히 스크립트가 함수를 호출할 수 없게 됩니다.

이 동작의 원인은 무엇이며 bash 4에서 기능을 올바르게 내보낼 수 있는 방법은 무엇입니까?

관련 정보