Bash 取消声明只读变量(声明 -r var)

Posted

技术标签:

【中文标题】Bash 取消声明只读变量(声明 -r var)【英文标题】:Bash undeclaring a readonly variable (declare -r var) 【发布时间】:2015-03-14 01:44:14 【问题描述】:

我可以declare a bash variable as read only:

var=myname
declare -r var

然后当我尝试更改值时:

var=anothername

我得到(例如在 zsh 中)

>>read-only variable: var

如何“取消声明”或取消设置此变量?

【问题讨论】:

Unset readonly variable in bash的可能重复 【参考方案1】:

我在这里找到了这个unset:

$ cat << EOF| sudo gdb
attach $$
call unbind_variable("var")
detach
EOF

【讨论】:

一个非常丑陋的解决方案..为此使用 gdb。工作并回答问题。但我永远不会在生产代码中使用它..【参考方案2】:

你不能在 bash 中,只读意味着你无论如何都不能改变那个变量,包括摆脱它。

【讨论】:

以上是关于Bash 取消声明只读变量(声明 -r var)的主要内容,如果未能解决你的问题,请参考以下文章

let命令

let 和 const 命令

KotlinKotlin 变量与常量 ( 变量声明 | 只读变量 | 类型推断 | 编译时常量 | Kotlin 字节码查看面板 | Kotlin 引用数据类型 )

ES6学习笔记二 新的声明方式和变量的解构赋值!

十微信小程序-varletconst用法详解

479 变量提升机制