如何删除bash中的只读变量?

Yis*_*ang 8 linux bash shell

$ mySite="superuser"
$ readonly mySite
$ unset mySite
bash: unset: mySite: cannot unset: readonly variable
Run Code Online (Sandbox Code Playgroud)

我们如何删除 mySite,因为它是一个只读变量?

mic*_*ica 6

Walker Hale IV的解决方案可以使用以下更新版本中提供的选项以更短的方式表达gdb

gdb --batch-silent --pid=$$ --eval-command='call unbind_variable("mySite")'
Run Code Online (Sandbox Code Playgroud)

同样,这是应该远离生产环境的黑魔法


Isa*_*tch 5

您不能删除 mySite。readonly 命令的重点是使其成为最终和永久的(直到 shell 进程终止)。如果您需要更改变量,请不要将其标记为只读。