如何使函数readonly

Luc*_*one 3 bash function readonly

有样本功能

function functionName ()
{
    echo "Hello World"
}
Run Code Online (Sandbox Code Playgroud)

如何避免被以下具有相同名称的函数覆盖?

function functionName ()
{
    echo "this is another function"
}
Run Code Online (Sandbox Code Playgroud)

Luc*_*one 7

您需要使用-f选项来使readonly对应的函数,语法是:

readonly -f functionName
Run Code Online (Sandbox Code Playgroud)

在此之后,如果您尝试更新该函数,将触发错误:

bash: functionName: readonly function
Run Code Online (Sandbox Code Playgroud)

  • 虽然,你仍然可以'取消设置functionName`. (5认同)
  • @JakubNowak:我在 2012 年显然不知道这一点;-) 感谢您的更新。 (2认同)