Bash的"声明"的未记录的"-c"选项?



我在玩Bash变量,错误地使用了-c选项(用于const(到declare,而不是正确的-r选项来创建readonly变量。令我惊讶的是,该变量保留了-c属性,并将我指定的值的第一个字母大写。

declare的用法中没有列出此行为,无论是在declare --help输出中还是在Bash的信息页面上。它似乎与ksh的typeset不兼容,尽管-u-l选项是兼容的。

这是一个众所周知的未记录功能吗?它普遍可用吗?

declare -c-l-u似乎已经在bash 4.0中添加在一起(在4.0-rc1中引入(,只要--enable-casemod-attributes配置标志没有被禁用(默认情况下是启用的(。有针对它们的测试(在tests/casemod.tests中(。为什么-c从未被记录下来是个谜。

相关内容

  • 没有找到相关文章

最新更新